Added projection matrix epsilon that fixes depth clipping issues in some games
Moved projection epsilon to a more reasonable place
D3D: Replaced shader-based depth range remap with viewport

This fixes UI rendering in some games mentioned in https://code.google.com/p/dolphin-emu/issues/detail?id=7785
D3D: Removed somewhat mysterious comment

It would be good to know which games exactly exhibited the issue.
Renamed DEPTHPARAMS to PIXELCENTERCORRECTION

This shader constant was previously used for depth remapping in D3D and for pixel center correction. Now it only serves one purpose and the new name makes it clear.
D3D: Viewport min and max depth is now clamped to [0..1] range
JIT: remove unused flag.
Common: Add a built-in profiler
FrameTools: Fix dimming of controller settings menu item
[AArch64] Add loadstore paired emitter instructions.
[AArch64] Improves the register cache.

Removes the REG_AWAY nonsense I was doing. I've got to get the JIT more up to speed before thinking of insane register cache things.
Also fixes a bug in immediate setting where if the register being set to an immediate already had a host register tied to it then it wouldn't free the
register it had. Resulting in register exhaustion.
[AArch64] Fixes the dispatcher

Changes the dispatcher to make sure to we are saving the LR(X30) to the stack. Also makes sure to keep the stack aligned.
AArch64's AAPCS64 mandates the stack to be quad-word aligned.

Fixes the dispatcher from infinite looping due to a downcount check jumping to the dispatcher. This was because checking exceptions and the state
pointer wouldn't reset the global conditional flags. So it would leave the timing/exception, jump to the start of the dispatcher and then jump back
again due to the conditional branch.
[AArch64] Implements block linking.

Before block linking was enabled but it wasn't ever implemented.
Implements link blocks and destroy block functions and moves the downcount check in the WriteExit function so it doesn't get overwritten when linking.
[AArch64] Implements HLE function injection
[AArch64] Makes some integer instructions more clear what they're doing.

ComputeRC was a bit unclear by using 64bit registers for setting the immediate and then calling SXTW on a 6b4it register which is just a bit obscure.
When the source register is an immediate in cntlzwx, just use the built in GCC function instead of our own implementing for counting leading zeros.
[AArch64] Only flush registers that are needed with interpreter fallback.

We try to keep as many registers as possible in callee saved registers, so if we have guest registers in the correct registers and the interpreter
call we are falling back to doesn't need the registers then we can dump just those ones. Which means we don't have to dump 100% of our register state
when falling to the interpreter.
TLB: fix backwards exception check
Vertex loader: optimize texmtx_write_float4

Seems to be pretty high in the profile in some geometry-heavy games like The
Last Story, and the compiler-generated assembly is terrifyingly bad, so
SSE-ize it.
Merge pull request #1392 from kayru/d3d_viewport_depth

D3D: Replaced shader-based depth range remap with viewport
Merge pull request #1645 from magumagu/jit-unused-flag

JIT: remove unused flag.