tox.ini: Don't repeat dependencies

by using substitutions from other sections.
Merge pull request #524 from msabramo/tox.ini_streamline_deps

tox.ini: Don't repeat dependencies
Merge pull request #523 from msabramo/simplify_main

Simplify main; extract to Controller.exec_cmdloop
test_options_unixsocket_configfile: Don't use argv

Without this, if you invoke a test command that has command-line
options, `supervisor.options` will try to parse those options and can
fail because of unrecognized options:

    $ .tox/py27/bin/py.test -v supervisor/tests/test_options.py -k test_options_unixsocket_configfile
    ...
    self = <supervisor.options.ClientOptions instance at 0x103aeb050>, msg = GetoptError('option -v not recognized', 'v')

        def usage(self, msg):
            """Print a brief error message to stderr and exit(2)."""
            self.stderr.write("Error: %s\n" % str(msg))
            self.stderr.write("For help, use %s -h\n" % self.progname)
    >       self.exit(2)
    E       SystemExit: 2

    supervisor/options.py:143: SystemExit
    -----------------------------------------------------------------------------
    Captured stderr call
    -----------------------------------------------------------------------------
    Error: option -v not recognized
    ...

Changed test_options_unixsocket_configfile to explictly set `arg` to an
empty tuple so that `*arg is not None` and it doesn't pull args from
`sys.argv`.

Output:

    $ .tox/py27/bin/py.test -v supervisor/tests/test_options.py -k test_options_unixsocket_configfile
    ...
    supervisor/tests/test_options.py::ClientOptionsTests::test_options_unixsocket_configfile PASSED
    ...
Merge pull request #525 from msabramo/test_options_unixsocket_configfile_dont_use_argv_from_command_line

test_options_unixsocket_configfile: Don't use argv
test_no_config_file_exits use realize(args=[])

Also changed test_options_unixsocket_configfile to use this style, as I
noticed that this style is already present in a bunch of places, so
might as well be consistent.
Merge pull request #526 from msabramo/test_options_unixsocket_configfile_dont_use_argv_from_command_line

test_no_config_file_exits use realize(args=[])
Determine which file an error occurs in
Add tests for UnhosedConfigParser
Fix section_to_file when read() receives multiple filenames
Add a test that processes_from_section() shows filename on error
Decouple UnhosedConfigParser from environ_expansions()
Also try to expand the default value in saneget()
Add tests for saneget()
Clean up parsing extras in get_plugins() and add a test
Remove redundant expansion of directory
Remove environ_expansions()
Remove @patch now that we can inject the environment
Add test for [include] section with no files= option
Add tests for malformed config files