Minor cleanup
Some preperation for basic shop and currency system.
Created new system for gamestate consisting of gamestate objects instead of an enum system. This helps using polymorphism and transfering responsibility away from Game class