Add toAvroMap command that converts a morphline record to an Avro record that contains a Map with string keys and array values where the array values can be null, boolean, int, long, float, double, string, bytes.
CDK-535. FileSystemDatasetRepository.partitionKeyForPath breaks backwards compatibility
CDK-536: Do not call setDataModelClass in Avro 1.7.4.

The AvroSerialization.setDataModelClass method was added in 1.7.5, which
isn't available on some clusters. It is now dynamically resolved and not
called if it is not present. In 1.7.4, the only data model available is
reflect.
CDK-534: Add View#isEmpty test.

This adds a default implementation in AbstractRefinableView that
instantiates a DatasetReader and returns false if that reader has at
least one record. The javadoc for the new View method notes that this
may be expensive in some cases.
CDK-529: Add Datasets methods without type argument.

This simplifies code when the type parameter doesn't matter or when the
dataset that is constructed is not used.
CDK-529: Add tests for Datasets methods without type.
CDK-529: Use GenericRecord instead of GenericData.Record.

Use the interface rather than the concrete class for generic Datasets
methods. This prevents an incompatible API change if the generic record
implementation changes in the future.
CDK-532: Add CharSequenceSet for String/Utf8 comparison.

This adds CharSequences.compare and CharSequences.hashCode that produce
consistent results across concrete types of CharSequences, and a Set
implementation that uses them.

Predicates.in implementations are now updated to detect CharSequences
and use a CharSequence set. Ranges have not yet been fixed, so the to
and from methods in AbstractRefinableView will still round-trip String
and Utf8 values.

In addition, this fixes the serialization round-trip for partition
fields.
CDK-532: Replace Range with CharSequence version.

This adds a minimal Range API almost identical to the parts of guava
that are used, but that is more flexible with endpoints and allows a
CharSequence implementation.
CDK-532: Remove DataModelUtil round trip method.

Predicates now work with CharSequences correctly, so there is no need to
round-trip values to coerce between string types.
CDK-532: Remove primitive compare methods for java6.
CDK-532: Add tests for CharSequences.
CDK-532: Add Range tests for Comparable, CharSequence.