First pass at an Avro schema generator.

This does not support mixed types (yet).
A unit test will be needed to confirm, but I believe the outputted Avro
schemas are correct!