setup: Fix capitalization of CherryPy package
docs: Use twine for uploading sdist/bdist_wheel
mpd: Format multiline patterns properly in docs
docs: Fix reference
mpd: Format multiline patterns properly, second try
mpd: Format multiline patterns properly in docs

(cherry picked from commit e2b36cb0f0702f44a25fcec79cca8dd3b3bded43)
docs: Fix reference

(cherry picked from commit 13fb2bf6048b1045d18ce708b9463585daf536de)
mpd: Format multiline patterns properly, second try

(cherry picked from commit f383e9ad4825d9d38de92eb2ddf207d97af62c43)
Merge branch 'master' into develop
listeners: Make listeners async

- Add a common Listener base class
- Make send helper for sending out events with pykka
- Make send async helper for avoiding blocking events

This change ensures all the events now get sent out via the MainThread instead
of blocking the actors.
listeners: Import grouping fix
Merge pull request #594 from adamcik/feature/async-listeners

listeners: Make listeners async
logging: Remove use of root logger
local: Start moving tag cache code out of main local
local: Move tag cache translators and tests out.
docs: Update changelog
main: Only log creation of config when file does not exist.
core: Refactor core Backends helper

Replaces the jungle of extra dicts/lists with an OrderedDict per backend
feature type. Also makes sure that each type/scheme is unique instead of
the scheme alone.
local: Always return track with just uri for local playlist tracks

This is related to #527, but is only a stop gap until we fix it right. Note
that this actually causes a regression, as not playlist tracks will have any
metadata after this change.
tagcache: Split out to own extension for eventual deletion.