Jit64: implement tw/twi more accurately

Fixes issue 7253.
Move the #pragma once header guard before the includes in Statistics.h in VideoCommon.
ogl: fix signed vs unsigned comparison warning
ShaderGen/D3D: inline centroid
ShaderGen: merge early-z blocks of ogl+d3d
ShaderGen: use cbuffers for D3D
ShaderGen: inline constant shaders
PixelShaderGen: drop fmod as it isn't used any more
PixelShaderGen: extract iround
ShaderGen: make clipPos readonly
ShaderGen: OGL: don't make a copy of "Normal"
ShaderGen: make uv readonly
Adds support for the PP shaders in the Android UI.

Copies over the PP shaders to the APK's assets and installs them on run.
Exposes them via the video settings UI.

This is in anticipation of dropping the workaround for rotated blits on Adreno and instead forcing shader usage by the user.
Fixes our post processing shaders so they work under OpenGL ES 3.0

Most of our shaders relied on implicit int->float conversions.
This fixes the assumption that this is allowed
Change Android's default EFB configuration to texture instead of disabled.
Merge pull request #185 from degasus/shader-cleanup

Shader cleanup
Add a std::make_unique implementation

Some compilers we care about (mostly g++) do not support std::make_unique yet,
but we still want to use it in our codebase to make unique_ptr code more
readable. This commit introduces an implementation derivated from the libc++
code in the Dolphin codebase so we can use it right now everywhere.

Adapted from delroth's pull request.
Use std::make_unique where it makes sense to

(and improve some other unique_ptr initializations).

Adapted from delroth's pull request.
Apparently the debug build has not been freeing memory since 2008. Undo that.
Merge pull request #352 from shuffle2/master

[windows] Fix debug build memory leaks.