main: Move argparse building to a function.
main: Create helper for logging boostraping
main: Start unifying command handling

- Removes show_deps and show_config from commands module. These
  are now handled directly in the main() method pending subcommands.
- Unifies show_config with general main() config handling.
- Sets default verbosity level to zero.
- Reduce verbosity when --show-config or --show-deps is called.
- Update console logging to consider verbosity < 0 quiet/
main: Switch to subcommands

- show-deps replaced with 'mopidy deps'
- show-config replaced with 'mopidy config'
- Just running mopidy now displays help, run 'mopidy run' to start server.
main: Improve main bootstrapping sequence

- Parses args in two pases to allow for setup of logging well before doing
  extension sub-commands.
loggin: Add DelayedHandler to root logger.

The delayed handler:
- Accepts and buffers logs until they are released.
- Upon release the logs are re-posted to the root logger.
- After release log records are ignored.

This allows us to avoid the silly tricks we've been doing with parsing args and
config early for the sake of bootstraping logging. Now we can just start
logging and once the logging has been setup the messages are released and
handled according to the correct settings.
main: Move default subparsers into commands module

Also switches to using dest for storing the chosen sub-parser.
ext/backends: Add get_sub_commands and BaseSubCommandProvider
main: Wire in actual execution of sub-commands.
ext/backends: Add extensions to sub commands run
local: Add 'mopidy scan' command via extension sub-commands.
scanner: Remove old scanner in favour of sub-commands
docs: Update docs with respect to sub-commands
docs: Fix minor doc issues found during review

- Adds autodoc for mopidy.audio.scan
- Updates ``file://`` to ``local:``
- Minor language fix.
docs: Update changelog with sub-commands work
Merge branch 'develop' into feature/subcommands

Conflicts:
	mopidy/scanner.py
local/docs: Update based on review comments

- Bunch of typos and wording improvements from review.
- Fixed mopidy.backends.local.scan botched merge.
- Document and enforce that sub-command name needs to be bytes.
local: Fix flake mistakes in scan sub-command.
docs: More review fixes
commands: Start adding commands util helper.

This class is intended to be used to contruct a tree of sub-commands. In this
intial version it mainly focuses on exposing `add_argument` to allow for nested
parsers. Next step is to start adding better `--help` that shows the entire tree
and hooking it up to select what code path to really run.