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).
I should add a comment here.  This is one of the trickier aspects of the logic.  In this case, the current cell is actually handled on the next iteration and we're only emitting and clearing the previous increment here.  This was one reason to add the "peeking" semantics.  It's a bit tricker, but makes it much easier (and simpler) to honor the limit that is used.