Command Infrastructure

* reorganise packages
* add 'CommandBean' annotation
* add 'CommandUsageException' .. will ensure usage is displayed to user
via command framework