Should `States:` be mandatory? 

Joachim suggests that we mark `States:` as recommended but optional.  Knowing the number of states beforehand makes it possible to preallocate various arrays and do better error checking, but it is not really harder to parse the file without this information.  On the other hand, you do not necessarily know the number of states when you output an automaton that is built on the fly, so having to specify this number might be inconvenient.

What do you think?