changelog: web API change
fix #503: format untyped fields with bytes values
tolerate implicit conversion of bytes formatters
new dbcore.types module

Now Type is proper, full-on class so we don't have to fit everything in a
lambda.
rewrite: flatten Confit view to string

Previously, this would pass around a ConfigView object which would only lazily
get turned into a string. Bad!
catch OSError when checking for `convert` program

As reported by zeltak on IRC.
"advanced" guide on manually choosing path formats
fix #508: crash when parsing empty query part

This is a regression created by my endeavor to have parse_query_part never
return None. Now the regular expression should really always match.
DBCore types: no functional-style Type constructor

This was getting more and more awkward. Also added a `parse` method (in
progress).
less code to specify `sql` and `query` for Type

Declarative class members instead of super calls. Wins every time.
avoid NotImplementedError for the time being
Search again locally in album folder when running beet fetchart without -f
Colorized output of beet fetchart, for easier detection of albums with no cover
Added option for not writing tags to file, when tags in db are not modified when running beet modify
comments, naming, and docs for part of #509
merge colorization part of #509

Conflicts:
	beetsplug/fetchart.py
fetchart colors (#508): simplify, new colors

Also a changelog entry.
Synchronize with upstream beets modifications.
Removed dont_write_if_unchanged config option: now files tags are never updated unless db tags are changed (with beet modify)
Removed duplicated code: modified showdiff() so it uses also different()