Singleton and Abstract GameState
Added states