Extract Raft interface from Context

Goal is to have a RaftStateContext handle requests on its own thread without relying on transport layer's thread. First step is to have an interface possibly exposing methods returning `Future` (implemented with immediate futures while waiting for threading modifications to reach master...) and hide RaftStateContext implementation details.