added a GameState struct