Distributed key-value storage system based on Raft consensus algorithm (MIT's Distributed Systems Labs)