1 - Introduction
Easier to understand than Paxos
5. The Raft Consensus Algorithm
Elects a leader and the leader has complete responsibility for managing the replicated log.

Key Properties:
- Election Safety: at most one leader
- Leader Append-Only: leader only append new entries
- Log Matching: if two logs contain an entry with the same index and term, then the logs are identical in all entries up through the given index.
- Leader Completeness: if a log entry is committed in a given term, then that entry will be present in the logs of the leaders for all higher-numbered terms.
- State Machine Safety: if a server has applied to a log entry at a given index to its state machine, no other server will ever apply a different log entry for the same index.
leader timeout? majority? step-down timeout? game of time?