Figured out how to run scripts using Twisted's APIs.
Rewrote Queue implementations to be generic an handle any queue. This means that minimal processing is done other than combining the json file on the file system with the base configuration loaded from `manager.json`.
Changed to twisted logging instead of python logging because it just works. Fixed deferred maybe not being a `Deferred` object.
Fixed ordering of calls in `lib.commands` and changed the catch to catch the correct error.
In the configuration manager service. Indicated that an update should take place when the service starts. Also fixed not returning a value and calling the wrong method.
Cleaned up `lib.file_helper` and added a method to create a json string from an object.
Added `box_sender` to arguments list of `RegisterStationCommand`. This allows me to easily send a new call to the station.
Updated `roles.encode` to take and use the new style of delegating jobs from a queue. This simply redirects the config into another process which handles the main processing.
Reworked `manager` to use the service architecture. In the process changed the layout of the config(see the README).
Cleaned up code, moved to twisted logging and fixed problems with not recreating a AMP every reconnect.
General code cleanup.
Added concept for how to handle station logging.
Updated configuration format and Updated README to include it.
Removed TODO's that are done. Added notes to those that are part way done or shouldn't be done.