Record syntax for GameState
More record type goodness
isPromotionMove