Remove code to use last mp3 handle on error.

It was copied from mpeg, where it was added for safety, and it shouldn't
be hit anyway.
Free mp3 contexts more carefully.
Fix savestate backwards compat.

Broken since 80702109f53968b45d947bdd4495585b68e54220.
Savestate and shutdown sceMp3 properly.

It wasn't even being saved before.
Set directories in headless on Windows.

Caused some tests to fail.
Update tests.
Fix missing uniform for GE_TEXMAP_TEXTURE_MATRIX.
Exclude 0xFF from logging, happens a lot.
Merge pull request #4310 from unknownbrackets/gpu-minor

Fix u_uvscaleoffset shader compilation error
Merge pull request #4309 from unknownbrackets/tests

Update tests
Merge pull request #4308 from unknownbrackets/mp3-minor

Fix mp3 savestates and savestate backwards compat
Only disable buffered rendering by default on Galaxy Y instead of all
Armv6 devices.

Would have like to use gpu feature flags but GL isn't necessarily initialized
when we load the config. Will need to find a different solution.

Also a buildfix for headless non-windows.
New attempt at solving #4272 by not using alpha in the backbuffer.

If some effect ends up requiring destination alpha, just use buffered
rendering.
add "onFinish" to screens so that ESC (etc) works the same as the back
touch button.
No need to enable FZ every frame.
Use Blackberry/UNIX time functions instead of fallbacks.
Blackberry threading optimisations.
Fix CPUDetect for i386 devices. Thanks @Sonic1. Confirmed by ganoo.
Fallback to default path if current directory doesn't exist.
Merge pull request #4316 from shenweip/patch-12

Fallback to default path if current directory doesn't exist.