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 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