Much refactoring and development to allow for unions of any arity, and automatic mappings from Either, Option, etc to an equivalent Union representation.
Added logic for mapping Option[T] to (union [T] #or [Unit]).
Updated the README to reflect union changes.
Updated the README to reflect union changes.
Added a static helper method Union.combine which takes two type tags as arguments: a tag describing a conjuntion of type negations, and a tag for a type to add to the conjunction before negation, resulting in a union type with the combination of member types.  Taken together with the newly exposed underlyingConjunctionTag on Union instances, this allows for building up unions one TypeTag at a time.  This functionality is required to construct AvroUnion objects for Either, Option, and later on, for supertypes of case classes.  Added tests for AvroUnion resolution via Either and Option, added tests for c.g.scalavro.util.Union and friends.
Fixed implementation of AvroType.canonicalFormOrFullyQualifiedName to properly return the FQN for subclasses of AvroNamedType.  Re-instituted protocol schema generation test in AvroTypeSpec.
Updated the README to reflect new capabilities regarding Unions.
Added implementation to map supertypes of non-recursive case classes to a union of all child case classes viewable from the runtime class loader.  Added examples to the documentation for same.
Merge pull request #1 from GenslerAppsPod/union-enhancement

Union enhancement