Don't hash the clut when it's not even used.

Many games load the clut even when it wasn't changed, and we don't flush
between when this happens.  There shouldn't be any need to rehash the clut
either.

Technically, the clut could have actually changed, but this would
generally require them to clear the dcache or something in a way the GE
probably doesn't support.
Make sure to update the CLUT if format changes.

Otherwise we throw away the loaded clut, which is no good.
Switch to a weaker, but faster clut hash.
Allow ConvertColors() to work as a copy op.
Don't bypass the secondary cache on minihash fail.
Merge pull request #1936 from unknownbrackets/texcache

Improve CLUT load performance, tweak hashing