Early bugfixes.

Changed isValidOn(noun) to isValid(nouns) to better reflect how it's used.  Added Command.isValid() as a wrapper for convenience.

Added INVALID command, used when the input cannot be parsed properly.

Split help property of actions to help and syntax.

Added HELP command.  When used alone: displays help for all available commands.  When used with action names as arguments: displays help and syntax for the given actions.

Actions now use isValid(nouns) before continuing.

Other bugfixes that I can't see because WebStorm doesn't let me type and view a diff simultaneously.