Add support for merging range addressing records.

This change generalizes the code in UpdateRangeAddressing to support
removing implicated range addressing records instead of just adding
them. UpdateRangeAddressing has been unexported by renaming to
updateRangeAddressing, and its logic better documented and simplified.

The exported methods are SplitRangeAddressing and MergeRangeAddressing.
Split takes left and right. Merge takes the original left and the
updated, merged result of left + right. Merge actually ended up being
simpler than I thought it might be. In effect, you remove any records
associated with the original left side of the merge (remember that
range addressing records are always indexing the END of the range),
and update the new complete range.

The unittest is pretty hairy. It's been rewritten to support both
split and merge and each step takes both left and right ranges.
In the case of split=false (merge), the left range specifies the
original pre-merge left side and the right range specifies the new
merged range. A further complication here is that when split=false,
the left slice of "expected new" meta keys is actually the slice
of meta keys we expect to see removed.
Further simplified logic in updateRangeAddressing
Minor client documentation updates.

Trying to set a good example by closing the client object when
we're done with it in the examples.  Omit setting the isolation
level for the transaction, since Spencer said it was not necessary
in normal usage.  Also fixed the example code in the main
documentation to work correctly.
Merge pull request #213 from jamesgraves/client_doc_updates

Minor client documentation updates.
Update README.md
Merge pull request #214 from worldsoup/update-circleci-badge

update circleci badge
Range scanner which iterates over ranges and adds them to queues.

Next step will be implementation of rangeIterator, integration with
Store, and creation of first actual rangeQueue implementation. Will
probably do garbage collection.
Addressed Ben's feedback; added an empty iteration unittest.
Also fixed data race in the unittest.
move scan interval to a default value and command line flag in store.go
Merge pull request #216 from cockroachdb/spencerkimball/range-scanner

Range scanner which iterates over ranges and adds them to queues.
Rename makeRangeKey to engine.RangeDescriptorKey for clarity
fix test, added more debugging log statements
Merge pull request #212 from cockroachdb/spencerkimball/update-range-addressing

Add support for merging range addressing records.
Add new baseQueue and underlying priority queue code and tests.

baseQueue will be embedded in all range queue implementations.
adjust scanner timing test to be more permissive
Implementation of rangeIterator for store.
Update scanner.go
Address feedback, add unittest, fixed bug in Store.RemoveRange
Address feedback
Merge pull request #218 from cockroachdb/spencerkimball/store-range-iterator

Implementation of rangeIterator for store.