Committing changes to the game

Split off a bunch of functionality into proper managers