Refactor: IntermediateGameState::act() returns intermediate
Refactor: extracted Game class
Refactor: removed unused method from Test
Refactor: Test now uses Game
Refactor: PlayerState hides the reverse action
Fix: get_action_along_direction did not hide reverse action
Limited max_choices of ChoiceTree
Refactor: added initialization precondition to GameTree
Refactor: don't save GameTree

have ChoiceTree replay its actions upon load instead, to bring back
GameTree to its old state
Refactor: Removed unused save/load functionality of GameState