* allow initial food placement for 8 snakes on 7x7
* fix logic to be for small board
* fix inverted logic
* logic should be actually <= 4 snakes, not 7
* reorganize code
* first draft of map generator interfaces
* add explicit random interface to board helpers
* implement standard map
* rename Generator to GameMap
* allow initializing snakes separately from placing them
* add random number generator to Settings
* updates to GameMap interface
* add helpers for creating and updating BoardState with maps
* extract board generation out of rules.Ruleset
* update comment and remove redundant interface check
* clone boardState in constrictor to respect the ModifyBoardState interface