**Structs Required: **
- Node
- ID
- Channel
- LogicalClock
- Priority Queue
- Use a heap (?)
- Push and pop
- Messages
- Type
- Enum (Request, Reply, Release)
- From
- To
- Type
Algorithm:
-
Create nodes for everyone
-
Create channels for everyone
-
Tell everyone of each others' channel
-
Start sending messages