This project implements a distributed messenger application, capable of
- Using SQLite to create a persistent key-value storage.
- Manage multiple sockets and multiple client connections
- Guaranteeing Fifo and total ordering
- Supports concurrent storage and retrieval of messages.