As an FYI i've started doing some refactoring of the Shell so that each command is in a separate class which encapsulates everything related to the command and made those discoverable so additional commands can be added independently. All the existing commands now need to be refactored out into these new separate classes if anyone is interested in helping do that.
...ant
