covers: provide new API to simplify writing of covers plugins

The plugin doesn't have to handle the cover savings anymore, it just has to
signal through a callback mechanism that it got some cover somewhere, and
Sonata will save the cover at the right place with the right name.
cover: log and images detection is done by Sonata itself

This simplifies even more covers downloading.
covers lastfm: detect errors
covers: allow to pass a reason to the error callback
doc: start to add a documentation to explain how the plugin system works
plugin: simplified cover fetching API for plugin writers

The plugins now don't have to take care of saving the covers to the file
system, to differentiate between getting one cover or many, nor to return
special values depending on what they did.

Previously, all those things had to be done in each and every cover-fetching
plugins, which was redundant and not very practical. I believe this is now much
easier.
doc: updated changelog with new format
mpd: if a song attribute exists several times, keep only the first one

An attribute of a song can be present several times on some song (for
example, 'Genre'). In this case, python-mpd returns a list containing
all the values of this attribute. This doesn't really fit in Sonata, so
we keep only the first one.