Add Builder and Reader ABCs for each struct type

This has zero overhead if not used.  I decided that it was simpler
to use ABCs instead of real classes, given that using real classes
offers little benefit.

This also implements == and != for StructSchema objects.
Merge pull request #8 from amluto/develop

Add Builder and Reader ABCs for each struct type