Add ability to validate subcommands.

A command handler can invoke validate() on the command info object
passing a callback function. If validation succeeds then the callback is
invoked with no arguments otherwise an error definition and replacement
parameters are passed.
0.8.106