keev - a Key-Value Serialization format with a concept of optionality on each side.
- All messages exist in a "top level" namespace
- There is no versioning of messages. New message, new number.
- Protocol speakers should expect to "negotiate" which versions they CAN speak, and which they will use.
- Input/Output capabilities?
- This should probably only happen once, on connection
- For anachro: Remove the concept of paths
- Use an enum, make it non-exhaustive
- Have a method for generating the RX and TX capabilities