some specific commands are now objects

* Diagnose and Update no longer contain @staticmethods
* updated executor for this change.
fixed printing format
organised __doc__ options and added drive command