Clean up game format
The format mixes AI with game logic in the definition. It might make sense to split these out to avoid requiring that people implement the AIs if they're working on either single-player or multi-player with no ai.
In addition, rule is used for both production rules and for victory conditions. In the paper we called them `victory conditions' to avoid the confusion. We should probably do that at the code level as well.