Remove context from dispatches.
Use protocol instead of structs to represent cluster change commands.

Commands of a state machines are represented with cocaine io protocol. Actually cluster configuration is a state machine, so its commands are also represented with protocol now.
Service counter replies with usefull error codes.

Service counter replies with raft::command_result, so client can determine, what type of error has occurred and where is the leader now.
Merge pull request #80 from andrusha97/raft

Raft