X64Emitter: support shorter mov reg, imm opcodes

Also refactor WriteNormalOp a little bit and add comments.
Move "using namespace ArmGen" from headers to sources.
include CommonTypes.h instead of Common.h, remove unused using.
DiscIO: Remove unnecessary break statements.
CBoot: Use vectors instead of raw pointers in ELF functions.
ConfigManager.cpp: Removed three elements from platform-ifdef
JIT memcheck: don't flush register state unless an exception occurs
JIT: support paired load/store with MMU on

Also change the calling convention, to avoid RSCRATCH being clobbered by
memcheck'd loads.
JIT: add "far code emitter" to reduce L1I cache pressure
Fix Idle Skipping in JitIL.

Has been broken since the flags-opt merge. The idle skipping code in
JitIL was very brittle and depended on the IL of it's inputs not
changing in any way.

flags-opt changed the IR generated by the cmp instruction, which is part
of the idle loop, causing JitIL to break in really weird ways, which
were almost impossible to track down.

This fixes various wii games crashing/not booting and the Regspill
error on (all?) gamecube mmu games.
Merge pull request #1073 from phire/save_jitil2

Fix Idle Skipping in JitIL.
JIT: use far code emitter in more places
JIT: make memcheck macro support an inverted mode
JIT: fix memcheck with stXx
JIT: fix memcheck on float load/store, plus some corner cases
Merge pull request #927 from FioraAeterna/fastermmu

Fiora's Faster MMU Project
Add immediate tests for WriteNormalOp

also fix a bug in Bochs that was preventing adc from passing.
Merge pull request #1068 from rohit-n/use-vector

CBoot: Use vectors instead of raw pointers in ELF functions.
Merge pull request #1055 from FioraAeterna/smallermov

X64Emitter: support shorter mov reg, imm opcodes
Merge pull request #1071 from archshift/patch-1

ConfigManager.cpp: Removed three elements from platform-ifdef