Add support for routing all storage operations through raft.

The tests pass with this change most of the time but there are some
timing issues around the initial election and tests using IsTrueWithin,
so everything still uses noopRaft until that can be fixed.

@spencerkimball @cockroachdb/developers 
What I ment was that having to inspect error strings seems very ugly, and since it's only testing code we can live with just returning on any error.
It's just weird we can't do something like `if _, ok := err.NetConnClosedError`.