Rip out most of multiraft.go and replace it with etcd/raft.

This is not yet usable and the storage layer is not yet implemented,
but it's enough to pass its own limited test suite.

Next steps will be to make changes in the etcd/raft package itself to expose an interface that does not require a goroutine per group as raft.Node does.

CC @cockroachdb/developers @xiangli-cmu 
Yeah, but that's how the net/rpc interface is defined. It makes sense when you think about the possibility of sharing one Done channel for many Calls.