JIT: unify subfe/submex/subfex/adde/addmex/addzex code

Shorter, plus should make future optimizations easier.
JIT: unify subfcx and addcx code

Again, shorter and should make future optimizations easier.
Fix AArch64 MOVI2R helper function.
In the case of a zero immediate, it wouldn't generate code at all.
Also in the case of max u32/u64, use ORN to optimize it.
Fix all the current issues with the AArch64 register cache.
Fixes all the current issues I've been experiencing.
Scaled back the register cache idea for now so I can actually work on some real instructions.

Tested this work with unit tests so I know it works.
Unit tests are pretty great things.
JIT64: optimize carry calculations

Omit carry calculations that get overwritten later in the block before they're
used. Very common in the case of srawix and friends.
JIT64: optimize carry calculations further

Keep carry flags in the x86 flags register if used in the next instruction.
PPCAnalyst: refactor, add carry op reordering and non-cmp reordering

Tries as hard as possible to push carry-using operations (like addc and adde)
next to each other. Refactor the instruction reordering to be more flexible
and allow multiple passes.

353 -> 192 x86 instructions on a carry-heavy code block in Pokemon Puzzle.
12% faster overall in Pokemon Puzzle; probably less in typical games (Virtual
Console games seem to be carry-heavy for some reason; maybe a different
compiler?)
PPCAnalyst/JIT: add ability to easily toggle branch and carry merging
Kill off the wx casts within InputCommon and GLInterface.

All because someone didn't actually return the wxWindow handle for the edge case.
MMU: properly check MEM1 range on Gamecube games

Fixes at the very least Rogue Squadron II crashes.
x64Emitter: add LZCNT/TZCNT support and detection

Also add a unit test.
JIT: use LZCNT in cntlzw
Merge pull request #1083 from FioraAeterna/lzcnt

Add LZCNT support, use in cntlzw
Merge pull request #1064 from Sonicadvance1/AArch64-Fix-MOVI2R

Fix AArch64 MOVI2R helper function.
Merge pull request #1080 from lioncash/wx-crap

Kill off the wx casts within InputCommon and GLInterface.
PolarSSL: don't install stuff.

Be a little more careful next time, @Sonicadvance1!
Merge pull request #1084 from waddlesplash/stupid-externals

PolarSSL: don't install stuff.
Merge pull request #1021 from FioraAeterna/optimizeca3

JIT: Carry optimizations!
Merge pull request #1063 from FioraAeterna/fastermmufix

MMU: properly check MEM1 range on Gamecube games
Interpreter: fix carry calculation in srawx

I don't know anything this affected, but it didn't match the manual (or JIT).