Nested command structure
This release drops Commander, does some command processing of it's own and uses yargs-parser for options parsing. This has allowed for a nested command structure for grouping of commands, more flexibility in the command format, and automatic command suggest/complete functionality.
The format of command definitions have changed, with an args property replacing the command property. The actual commands used on the commandline are now defined as the keys in the commands definition object. There is also the option to set a top-level command group in the new plugin config object.
Actions no receive two arguments, the context object and an object containing the command options.
A new choices property in the command definition allows for suggest/autocomplete to be displayed for command arguments. The format of this property will likely change or be extended... WIP.
There's also some cursor positioning hackery intended to enable a line below the cursor to be used for suggestions, errors, etc. Early days, but it seems to work ok.