Use a separate class for dealing with images

This new class stores the image data in a tempfile.TemporaryFile so we
don't keep the data for all images that are used somewhere in memory
anymore.

It also deals with saving images onto disk when the corresponding tracks
are saved (this was previously done by the File class). This removes the
ability to use tagger script in the cover file name (cf. the first line
of File._make_image_filename).
Use the same Image objects for all tracks of an album
Catch IOErrors and OSErrors when creating Images

They can happen if the disk is full or the user is not allowed to access
the folder where tempfile.TemporaryFile wants to create the file.
Fix a typo

Not sure how that happened.
Fix embedding only front images

by using the images is_front_image attribute
tis -> this
Use tempfile.mkstemp to get a closable tempfile

This makes sure we don't run out of file descriptors if many images get
loaded into Picard.
Remove a super(...).__del__ call

`object` does not actually have a __del__ method
Use md5 hashes to make sure every images is only saved once

make_and_add_image will use already existing images from Tagger.images
if the hash of the image is the same as that of an image in there.
Use a _delete method for deleting temporary image files

__del__ was not getting called reliably when the interpreter shut down.
Delete cover files after running TestCoverArt
Fix indentation and hence logic.

else looks like it should be associated with if.

So unindenting to make it so.
Return translated sort as well as translated name
Revert "Fix indentation and hence logic."

This reverts commit fec4e107bb37bc7b9baab14ee9e5249d095a2239.
Return default if translate_artist_names unset
Fix-up code to handle default translations.
Fix bugs
Add support to read / write composer sort
Add composer from mbxml
Add NEWS entry.