added GameState singleton