Initial work on depalettization.
A bit closer to working. Shadow visible
Fix typo-bug when setting sampler uniforms, tweak fudge factors.
Update CMake and Android build
Support aligned 4-bit accesses to 32-bit framebuffers
Use a small offset to turn NEAREST into floor() when sampling the clut.

Minor fixes and cleanups.
Depalettize works at other resolutions than 1x. For some strange reason though if you change resolution in game it breaks.
Try to fix Qt build
Typo fixes, thanks raven02. Fix deinitialization crashes.
depal: slightly better error reporting.
Add GLES3 path to depalettization. Doesn't seem to help much though, must be missing something.
Allow 512 entries in 16-bit CLUTs. Also, forgot offset.
Fix some more issues. The snow scene in FF Type 0 now looks B/W instead of broken.
Small one , not a big deal
On PC, OpenGL 3.3 is enough for the new path, don't need ES 3 full compat.
Remove AlphaMaskHack
Also disable the logic op when rendering FB w/clut.
Cache clut textures based on clut format.

Since we would end up with a different palette (size, interpretation of
bits, etc.)
Validate framebuffer clut shaders on use.

When their parameters are actually the ones we are going to use.
Correct clut depal indexing.