SCHEMA-283. More HBase table/CF properties in KijiTableLayouts.

Contributed by: Alexandre Normande <alexandre.normande@opower.com>
Reviewed by: Aaron Kimball <aaron@wibidata.com>

Review: https://review.kiji.org/r/41/
JIRA: https://jira.kiji.org/browse/schema-283

Updates layout version to layout-1.2.0.
Adds max_filesize and memstore_flushsize to TableLayoutDesc.
Adds block_size and bloom_type properties to LocalityGroupDesc.
Changes Put Buffer to a HashMap.
Fixes platform incompatibility in HBaseKijiBufferedWriter.
replaces direct invocations of HTableInterface.setAutoFlush and
setWriteBufferSize with SchemaPlatformBridge methods.

Reviewed-by: aaron
SCHEMA-354. Initial compatibility with HBase 0.94.

This patch allows KijiSchema to pass tests with unit tests run as integration
tests against a live HBase 0.94 cluster.

Until POM-14 and FAKEHBASE-17 are included, we cannot build against HBase 0.94
directly; SCHEMA-353 tracks the total work to upgrade to HBase 0.94 while
retaining 0.92 support.

This patch does the following:

* HBase ColumnPaginationFilter is only used to trim data requests for columns
  with maxVersions=1; unlike in 0.92, HBase 0.94 will ignore the limit parameter
  and yield at most one element. Some columns in data requests with varying
  per-column maxVersions parameters may return more data than before (but never
  less than the user requested).
** KijiPaginationFilter moved to impl package, contract revised.
** Usage of KijiPaginationFilter restricted to internal cases.
* Get pagination tests working on 0.94.
** Other test cases revised to conform to requirements for KijiClientTest
   portability.
* Fix incorrect HBaseDataRequestAdapter tests.
** The filter lists being tested were simply incorrect. I do not believe
   that HBase 0.92 printed filter lists in Get.toString() or Scan.toString().
   HBase 0.94 causes stricter checking.
* KijiDataRequestBuilder maintains stable iteration order.
  Columns in KijiDataRequests built by KijiDataRequestBuilder now
  iterate in a stable order, guaranteeing that HBaseDataRequestAdapter
  constructs Gets/Scans (and their associated filters) in a stable order
  so that TestHBaseDataRequestAdapter passes.
* Disable unnecessary hbase-maven-plugin in kiji-schema-extras.
  There are no integration tests for this module; don't waste time on this.

** all kiji-schema tests pass when run on an HBase 0.94 cluster **
The following test plan succeeds:

  mvn clean verify -Dkiji.test.cluster.uri=kiji://localhost:2181/ \
      -Dorg.kiji.schema.KijiClientTest.HBASE_ADDRESS=localhost:2181

  mvn clean verify # Succeeds using 0.92 and Fake HBase
Allows AtomicKijiPutter to write across locality groups.

Reviewed by: milo
SCHEMA-361. Fix HFile schema-extras tools for 0.94

issue: https://jira.kiji.org/browse/SCHEMA-361
review: https://review.kiji.org/r/462
SCHEMA-353. HBase 0.94 support.

Switch to root pom 1.1.0-SNAPSHOT
and upgrade dependencies to HBase 0.94-CDH4.2.1
SCHEMA-353. Use Apache HBase 0.94.7 in 'hadoop1' platform.

Apache Hadoop 0.94.7 is the appropriate 0.94.x variant to be
compatible with CDH4.2's 0.94.2 variant.
SCHEMA-368. Split shims for HBase 0.92 and HBase 0.94.

* Renamed cdh4mr1-bridge to cdh41mr1-bridge (CDH4.1-specific).
* Added cdh42mr1-bridge (CDH4.2-specific)
* Renamed hadoop1-bridge to hadoop1-hbase92-bridge.
* Added hadoop1-hbase94-bridge.

Added shim method for creating an HFile.Writer object.
SCHEMA-368. Use HFile.createWriter shim in kiji-schema-extras.
SCHEMA-369. Fix the JUnit tests so that exceptions are properly caught and validated.

Fix the JUnit tests so that exceptions are properly caught and the messages in
them validated. This ensures that the right line that is expected to throw the
exception is tested or the test fails.

Reviewer: taton
Replaces expected exceptions with try/catch.

Reviewed by: lsheng