Updating Main to generate an Avro schema, use it to generate a state
machine, and finally generate a walk through the schema.

Turns out this is not possible.  An Avro union schema cannot be modified
after its creation.  Likewise, a null type cannot be added to a union if
an attribute is optional.

This will be fixed as part of The Grand Refactoring, which I will start
now.