schema generation looks good

We generate Avro schemas for sums-of-products, with proper memoization
so record definitions are not repeated.  Let's hope it is actually
correct.