Major refactoring to structure and seperate the game from the engine