D3D: Fixed D3D validation error during EFB to texture copy

Texture was being bound as a render target while still being set as a shader resource.
D3D automatically unbinds the SRV in this case and generates a validation error.
The fix is to manually unbind SRV, render into it and then re-bind to old slots.
VideoSW: rewrite VertexLoader to use the VideoCommon one
windows: use qt 5.4.0
VideoCommon: Add a separate constants buffer for the geometry shader.
GeometryShaderGen: Pass the primitive type and always run the generator regardless of stereoscopy.
GeometryShaderManager: Upload Line/Point width constants.
GeometryShaderGen: Redefine gl_InvocationID so we can use the same variable name in both backends.
GeometryShaderGen: Support multiple primitive types.

And make more stereoscopy code optional.
VideoCommon: Assume we always use a geometry shader, not just for stereoscopy.
VideoCommon: Merge LineGeometryShader into GeometryShaderGen.

This adds line-width emulation support to OpenGL.
VideoCommon: Merge PointGeometryShader into GeometryShaderGen.

This adds point-width emulation support to OpenGL.
GeometryShaderGen: Declare a prototype for EmitVertex().
GeometryShaderGen: Use signed integers for the texture offset flags.
GeometryShaderGen: Remove redundant declaration.
D3D+OGL: choose blendenable over logicopenable.

No sane game should turn on both logicopenable and blendenable in the same
blend mode, but not every game is sane. Fixes issue 6009.
Merge pull request #1707 from magumagu/blend-and-logic-op

D3D+OGL: choose blendenable over logicopenable.
Fix many bugs with the Symbols menu (when run with -d argument).
The Symbols menu is now fully useable.
Add "Load bad map file" option for map files on disc that don't quite match.
Currently it is very simple and naive, but filters out most of the bad matches.
Convert spaces to tabs in IDA Pro script.
Apparently c_str doesn't return a C str.