Use dictionaries for the protocol commands/response/etc. to improve error handling.