Refactor raft
- Incapsulate raft internals in separate modules, move space initialization there.
- Change raft_state schema. Now it's more suitable for updating individual fields of the raft hard state.
- Persist commit and applied indices.
- Rearrange storage code. High cohesion, low coupling, as they teach us.
Close https://gitlab.com/picodata/picodata/picodata/-/issues/12, https://gitlab.com/picodata/picodata/picodata/-/issues/13, https://gitlab.com/picodata/picodata/picodata/-/issues/14
Edited by Alexey Protsenko