conform all command verbs to a Class (not Module)
create abstract Cask::CLI::Base

from which all commands inherit.  Add `visible` method
for future use.
hoist ALIASES to top of class

with addtl formatting/comments
use `fetch` on ALIASES with default
add `command_classes` method
recast help/usage with `command_classes`

invoking new `command_name` method from the base class when the
command verb string is needed
recast `commands` method using `command_classes`

no longer a need for hardcoding constants to remove (such as
`:ISSUES_URL`), because `command_classes` checks for a `run`
method.
simplify `lookup_command`

by `zip`ping `commands` with `command_classes`
create "internal use" command verbs

- based on abstract class `Cask::CLI::InternalUseBase`
- interal-use class file names follow `internal_<verb>.rb`, but the "internal" is dropped for the CLI
- internal-use verbs start with underscore at CLI
- internal-use verbs are invisible in the usage document
add `_dump` internal-use verb
add `_help` internal command
refactor variable name max_command_len
add blank line to NullCommand message
whitespace
Merge pull request #5011 from rolandwalker/internal_command_dump

create "internal use" command verbs: _dump, _help