[dx9] don't do alpha test in pixel shader, use state mapping

hrydgard: Cleaned up a bit, disabled by default

Conflicts:
	GPU/Directx9/TextureCacheDX9.cpp
Cherry-pick a tiny part of cf41d2af29633146e5b07c8851382efe72491091
[Misc] Windows fixes

Conflicts:
	GPU/Directx9/TransformPipelineDX9.cpp
	GPU/Directx9/VertexDecoderDX9.cpp
	GPU/Directx9/helper/fbo.cpp
	GPU/Directx9/helper/global.cpp
[Gpu] somes fixes, monster hunter 2 run between 140 and 200% with vertex cache enabled

Conflicts:
	GPU/Directx9/FramebufferDX9.cpp
	GPU/Directx9/GPU_DX9.cpp
	GPU/Directx9/VertexDecoderDX9.cpp
	GPU/Directx9/helper/global.cpp
[Gpu] Update

Conflicts:
	GPU/Directx9/FramebufferDX9.cpp
	GPU/Directx9/FramebufferDX9.h
	GPU/Directx9/VertexDecoderDX9.cpp
	GPU/Directx9/helper/fbo.cpp
[Gpu] Sync with gles

Conflicts:
	GPU/Directx9/FramebufferDX9.cpp
	GPU/Directx9/FramebufferDX9.h
	GPU/Directx9/TransformPipelineDX9.cpp
[Gpu] Sync with gles

Conflicts:
	GPU/Directx9/GPU_DX9.cpp
[Gpu] update code, cleanup shaders generation: fixes rr2 lighting !

Conflicts:
	GPU/Directx9/PixelShaderGeneratorDX9.cpp
	GPU/Directx9/ShaderManagerDX9.cpp
	GPU/Directx9/VertexDecoderDX9.cpp
[Gpu] Various speedup (texture cache not tested ...)
D3D: Don't display buffered rendering upside down. Support screen scaling filter setting
Merge pull request #6774 from hrydgard/merge-ced2911-dx9-work

Cherry-pick from ced2911's dx9 work