cells: move command support into commons and create skeleton cli client

This patch moves the classes needed to support a CLI from cells into
commons.  Code has been updated to maintain backwards compatibility if
a CommandException (or subclass thereof) is sent as a message from a
non-upgraded cell.

The Interpretable interface is removed as it had no effect.

The CommandRequestable interface is removed.  Its purpose was to allow
arbitrary arguments; however, it was used for a single command (which
was never used in dCache) and the same effect is achievable via
escaping.

The chimera shell is split into two parts: the generic handling is
placed in the generic BasicShell class in commons, from which the
Chimera shell now inherits.

Support for the 'help' command is restored for the chimera shell.

Target: master
Requires-notes: no
Requires-book: no