JIT: revert lmw optimizations

This seems to break Star Wars Rogue Leader and I have no idea why, so for the
meantime I'm just going to revert it since it's not very important.
JIT memcheck: don't flush register state unless an exception occurs
JIT: support paired load/store with MMU on
JIT: make memcheck macros more generic

Can now be inverted, plus they support short jump opcodes.
JIT: fix memcheck on stXx
JIT: fix memcheck on float load/store, plus some corner cases
JIT: add "far code emitter" to reduce L1I cache pressure
JIT: use far code emitter in more places
JIT: avoid redundant flushes in some obvious cases

If we're about to end a block, we're going to need to flush anyways, so
don't do it on a branch just before the end. Saves instruction cache size.

This can probably be made a lot smarter.
Fix caller-save registers on windows