CDK-453: Add javadoc for input and output format configuration.
Add option to ignore (or fail on) very long records with readCSV command
Fix exception swallowing in CLI commands.

The CLI commands were using a try/catch block to determine if the
incoming dataset identifier was a URI or a name. If the URI was a
dataset URI but another operation failed with IllegalArgumentException,
for example a problem during creation, then the catch would retry the
operation assuming the input was a dataset name.
Add update command to add properties and evolve schemas.
Add mapping-config command to create column mappings.

This works like the partition-config command, where arguments are:
* <source>:key for key mappings
* <source>:version for occVersion mappings
* <source>:<col-family>[:<col-qual>] for all other mappings

The mapping type is determined by the schema type for non-key and
non-OCC mappings. If the field is an int or a long, then a counter is
used. If it is a record or a map, key-as-column is used. Otherwise, the
field is column-mapped.

If the column qualifier is missing for counter or column mappings, then
the source name is used.
Add column mapping option to create command.
Hide dataset repository selection options.

Before dataset URIs were supported, the CLI selected the dataset
repository based on options like --use-hbase and --directory. This was
limiting because only one repository could be selected. Now that URIs
can be used to identify a dataset in a single option, this is no longer
necessary. The old behavior is still around for backward-compatibility
and for ease of use (Hive is the default), but there is no need to keep
these options in the help menus.
Update CLI examples for dataset URIs and new options.
Add MockRepositories to kite-data-core test-jar.

This refactors TestDatasets and tests in the CLI to use the same mock
repository code.
Add tests for update command.
Add test for mapping-config command.
use Locale.ROOT to make behaviour insensitive to I18n issues
cleanup messages
Added config to force tests to run using IPv4 to speed up tests.
Enable CombineFileInputFormat on avro & parquet

Enable Crunch's use of CombineFileInputFormat for Avro and Parquet
files (as CombineFileInputFormat can offer useful performance
improvements).
prevent potentially gigantic error messages in readCSV
better prevention of potentially gigantic error messages in readCSV
CDK-496: Added the type parameter to the Datasets API

I also went through and extended the use of the type parameter down to at least Avro files
and CSV files. In order to support Parquet and HBase, I think more work needs to be done
on the underlying stores. But if I missed something, I can get those in before the merge.
CDK-496: Incorporated review feedback and made Constraints type aware.

Being able to pass the type when loading a dataset brought to light
potentially dangerous type conversion issues with constraints. Since
constraings already had to normalize the constraints that were coming
from View URIs, I updated constraints to be type-aware and to convert
all constraining values in a consistent mannger. This should make it
much easier to create constraints even if you switch between Generic,
Specific or Reflect data models.