preliminary full command parse
Merge branch 'cmds' into parser-command-resolution
handle the results better
let's do the execution in the shell environment, not the parser
easy peasy
the quit command runs ok... need help and tab-completion and like a million other things...
let's do this in the command heirarchy somewhere

Then the commands can have a say in whether they're parsing correctly
Merge branch 'cmds' into parser-command-resolution
Merge branch 'cmds' into parser-command-resolution
ahh, cmds is an arrayref
Merge branch 'cmds' into parser-cmds-extend-grammar
enumerate cmd namespace collisions
these collision handlers are probably pretty close
Merge branch 'cmds' into parser-cmds-extend-grammar
args to commands should be hashrefs, cuz that's what we'll get from the parser — no good reason to flatten it
there, we can error out of the ambiguity by simply listing it
don't want to have to escape the command names
never … changed this I guess.   Changed it elsewhere though.
bugged.  The parser generates the errors, we even said so in comments… so … don't print them here.
yeah, like this, probably