Make GameState abstract and require a subclass.

SimpleState and SimpleHtmlState were implemented to make using the
GameState easier.