Allow INI/JSON/YAML configuration for logging

In addition to the existing simple logging configuration that
can be specified in the circus.ini file, this commit adds support
for fully customizing the logging including handlers and formatters.
You can specify any of the handlers built in to in Python, such as
syslog, or write your own.

This is achieved by referencing an INI file, a JSON file or a YAML
file. The INI file format is read by Python's
`logging.config.fileConfig()` function.  The JSON file is read
into the `logging.config.dictConfig()` function.  If PyYAML is
importable then this type of file is also read in the same way
as JSON.

You can share the same logging configuration file with other
frameworks that support this kind of logging configuration
such as Django.

To test this, we add some tests that start Circusd as a child
process because the logging configuration is applied to the
entire Python interpreter.