Make CLI tool command-based and self-documenting

This aims to have a single "omni" CLI tool which has subcommands (like Git
and other popular utilities), and provides a self-documenting interface:

- The main entry point is not the "omni" tool (omni.cli:main).
- The OMNI server "omni.omnid.main" is moved to omni.cli:cmd_server,
  which can be reached using "omni server".
- Each command is a function, and their documentation strings contain the
  usage help texts for each command.
- docopt (http://docopt.org) is used to parse command lines from the
  documentation strings.
- Some additional mangling is done on top of docopt to beautify the options
  dictionaries and provide options as "opts.opt_foo_bar" instead of
  "opts['--foo-bar']".
- Commands which accept a "config" argument are passed the main OMNI
  configuration file, already parsed into a dictionary using wcfg.