Abstract gamestate