Fully asynchronous C implementation of the Raft consensus protocol.

The library has modular design: its core part implements only the
core Raft algorithm logic, in a fully platform independent way.
On top of that, a pluggable interface defines the I/O implementation
for networking (send/receive RPC messages) and disk persistence
(store log entries and snapshots).
