Only download width bytes, not stride bytes.

Fixes #6330, MotoGP not rendering properly with simulate block transfers.
Reuse existing buffer matching for MotoGP hack.
Respect "nearest" filtering setting for fbs.
Merge pull request #6338 from unknownbrackets/gpu-blocktransfer

Don't write bytes between width/stride during block transfers
Support alpha / color test masks on desktop/gles3.

Won't work on GLES 2, though...
Pre-mask alphatest value as a small optimization.

Might cause small behavior difference on gles2 (without bitwise ops.)
Fix a crash in the GE debugger on matrix tab.
Merge pull request #6341 from unknownbrackets/gpu-minor

Support alpha and color test masks on desktop/gles3
Linux buildfix.
Fix dumb typo.
Fix another mistake in color test masking.