replaygain: Check for bad mp3gain output (#961)
convert: Fix #962, extensions in auto mode
dbcore: parse_sorted_query (#953)
Factor out parse_query from get_query_sort
Introduce parse_query_string for the common case

Most clients other than Library._fetch know what type they have!
The demise of get_query_sort (#953)

The type tests now live where they ought to live.
Remove SortedQuery (#953)

This turned out to be less useful than I was hoping.
Move SmartArtistSort to library (#953)

Models can now have a dict of special sort classes.
Add slow sort to SmartArtistSort
Hide task specific code from importer stage
Test importing unmatched tracks
Fix mocking in Spotify tests

The mock wasn't being triggered; these tests were going to the network. Now we
don't match on the query string and instead test that it was correct by
actually parsing it.
Default sort configuration is global (#953)

It would be nice to cache the Sort object so we didn't have to re-parse this
every time...
Rename smartartist to artist/albumartist (#953)

This is basically always what you want, so now you can just use the name of
the field without "smart".
More on sorting in the changelog
Extend the documentation of the ImportTask
Add NoneQuery

This makes fast SQL queries for singletons possible
Decode bytestring paths to unicode when logging

Fixes #964.
Media file tags can be customized with the ``write`` event
zero: Only changes media file tags not database

Uses the new API from the previous commit and fixes #963.

There is a possible issue with backwards compatibility: Changes to the
item in the 'write' event do not propagate to the tags anymore. But I'm
not aware of other plugins that use the API in that way.