Coverart cleanup

Yet another attempt to cleanup cover art code, those changes make things much more easier to work with, conversion to classes is just a way to ease the move and to shorten lines (much less parameters to pass).

Of course this is an intermediate step, and improvement proposals are welcome.

Main changes:
- introduce few classes, helping to reduce number of parameters of most functions
- cleaner handling of "is front" flag
- improve handling of multiple types (CAA), sound file formats only support one per image but this limitation is handled at lower level now
- make code easier to understand
- improve debugging messages

The overall logic wasn't modified, it isn't the purpose of those changes.