massive Refactoring of game class