Server Interface

I updated Raft to use an interface for `raft.Server`. The only application-level change that should be needed is to update `*raft.Server` to `raft.Server`.

/cc: @xiangli-cmu @philips