CDK-343: Move FieldPartitioner to SPI.
CDK-343: Move partitioners to SPI.

This commit also deprecates the classes and public methods in
org.kitesdk.data.partition.
CDK-343: Fix comments from PR #20.
Add projectStrict to FieldPartitioners and add tests.

FieldPartitioner#projectStrict is like project, but it returns a
Predicate that accepts a partition value only if the original predicate
would accept all source values that produce the partition value. This is
the "strict" analog of the project method, which accepts a partition
value if there exists a source value that would have been accepted that
produces it.

This also adds more thorough tests for project and projectStrict, as
well as some bug fixes.
Update FS implementation to minimize entity constraints.
If no constraints, use Predicates.alwaysTrue.
CDK-308. Add DatasetOutputFormat.
First attempt at an input format.
Get input format test working.
Get input format working for parquet
Got input format for hbase compiling.
Add test for hbase input format. Test fails. Need to do conf right.
Load dataset in setConf.
Use Accessor so we don't need to make DaoDataset public.
Change to view.
Make dataset name -> HBase table name consistent with HBaseMetadataProvider.
Fix findbugs
Remove AvroKey and NullWritable in the signature in favour of entity type and void.
Add avro-mapred dependency.
Get TestMapReduceHBase passing.