optimize performance of removeFields and removeValues morphline commands
CDK-435: Enable FS nested partition source fields.
CDK-518: Remove PartitionKey use in Log4jAppender.
CDK-435: Update HBase to use EntityAccessor for keys.

This updates PartitionKey so that its data is extracted using the
EntityAccessor class. It also consolidates key building in the HBase
implementation by adding EntityComposer#extractKey and delegating all
key building to that method (via the new EntityMapper#mapToKey(E)). The
EntityComposer method is based on EntityAccessor because the most
reasonable place to manage the accessor is inside EntityComposer.

AvroEntityComposer also uses the accessor for extractField now, but
checks to ensure that the field is not a nested field, for now. The
getDefaultPrimitive method is no longer used so that this is compatible
with Avro's behavior.
Fix EntityAccessor for read schemas from AllowNull.

The EntityAccessor assumes that the dataset schema has no nullable
record fields for partition source data, which is validated by the
descriptor checks. However, when using reflected records with Schemas
generated by AllowNull, this may not be the case even though the
descriptor has validated correctly. This adds support to skip nullable
unions.
CDK-668: Update maven plugin to setup DefaultConfiguration.

Previously, properties set in the plugin's configuration were local and
the getDatasetRepository method had to use repository builders to use
the correct file system. This updates the method to create repository
URIs instead and changes the getConf method to update the default
Configuration.