Derive concrete classes from the preceding abstract domain definition.
Validate: Add a validation function, including security enforcement. Use JSON schemas to enforce a language-agnostic message definition which should cover 90 to 95% of validation rules. Add functions to validate class for the remaining 5 to 10%.
QueueController: Accepts a Msg_ID, creates a queue if necessary. Has two methods, get and put. Maybe a remove.
AbstractAction: Base class for all actions. Needs to reference JSON Schemas, too, particularly for Msg_EXT info.
DAO: Standard data access object with CRUD functions for various tables - user, account, history, etc.