Change CoverInfo hash to an integer.
Use cover hash as request reference in CoverArtDelegate.

Now only loads a cover once for rows that share the same hash.
Support sorting by cover art.

Sorts by the hash. It works well except for the case where cover art is
similar but not exactly the same. I think it's good enough to include,
even if some users may be confused why visually similar cover art
doesn't sort together.
Delay trackSelected signal until the user interaction timeout.

Improves scrolling performance when scrolling via keyboard.
Only repaint cells that were cache misses when we hit the user
interaction timeout.