CDAP-1062 Readless increments can drop cells on flush and compaction

This change refactors the aggregation of increment writes.

* IncrementSummingScanner now wraps the underlying InternalScanner using a WrappedScanner class.  This class handles the details of obtaining batches of results from the InternalScanner, and detecting when we cross a row boundary, and preserves any unconsumed cells from a batch between invocations.
* IncrementSummingScanner.next() now correctly respects the limit argument, where before it could exceed the limit value on occasions.
* Adds tests for increment handling and correct aggregation between flushes and compactions.  IncrementHandlerTest handles this from the client side, IncrementSummingScannerTest tests this directly on the region.

The change to the Tephra version in pom.xml is a placeholder until we have a new Tephra release with the fix for TEPHRA-49 (should be coming shortly).
It would be simpler, but unfortunately not consistent with the higher level semantics.  limit is a parameter to the IncrementSummingScanner.next() call (from InternalScanner interface), so ignoring that here doesn't seem correct to me.