Broadcast EventLeaderElection on all term or leader changes.
Return a channel from MultiRaft.{SubmitCommand,ChangeGroupMembership}.

This channel can be used to wait for the proposed action to be
committed.

Adding this wait to TestMembershipChange demonstrated that the test
wasn't actually doing much. Some of the issues have been fixed
but the test is disabled until we make some decisions about the
group membership protocol.
s/SendMessage/RaftMessage/g

This avoids confusion caused by the fact that the same method name
is used for both the sending and receiving side of the message.
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
GC stats to compute likely GC'able bytes from elapsed time.

A GCMetadata record will be written after every GC scan of a range. That,
combined with the current non-live bytes count and current time can be
used to estimate the expected count of GC'able bytes.

This will allow us to avoid constantly scanning ranges which have had no
churn, while using the range stats as well as a detailed picture of the
aging bytes on last GC scan to prioritize ranges for GC.
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.
Merge pull request #217 from cockroachdb/spencerkimball/watch-queue

Add new baseQueue and underlying priority queue code and tests.
README.md: Update to remove RocksDB confusion.

Previously we asked that people install the reqs for RocksDB, but that caused linking issues with bootstrap.sh. Removing that instruction for now.
Log instead of panicking when ProposeRaftCommand called after shutdown.

When a test that uses goroutines fails, these goroutines may continue
to try to use the store after it is shut down. The panic occurs during a
subsequent test function and obscures the true cause of the failure.

This problem appears to occur most often with TestRangeIdempotence,
so I've increased its timeout.

Fixes #222.
Merge pull request #223 from bdarnell/fix-panic

Log instead of panicking when ProposeRaftCommand called after shutdown.
Respond to Tobias' feedback
Add basic KV REST html UI and embedfile tool

This change adds a basic UI for querying the REST API from a web GUI at /kv/rest/.
It avoids the external dependency of another file (rest_ui.html) by generating a
file through the go generate command and the embedfile tool before compilation.

This is all a preamble to a better REST API, but also autogenerated documentation
using embedfile and go generate.
more appropriate naming
use local checkout path for embedfile
better error in the case where init is called on an existing db