De-memsetify Wii_SSL and fix segfault.

Fixes #7917
The first memset was clearing the delicate bits of the std::string
in the struct, causing segfaults.

I also removed the rest of the memsets because they were paranoid,
unneeded and waseful. We shouldn't be managing the ssl libraries
structs for it.
I checked and the ssl library's functions were already memsetting
those structs as needed.
VideoCommon: Add in/out qualifiers to centroid storage qualifier.

Fixes shaders for GPUs that don't support GL_ARB_shading_language_420pack.
Merge pull request #1715 from Armada651/geom-interface

VideoCommon: Add in/out qualifiers to centroid storage qualifier.
Fixes Adreno 400 slow performance.

Adreno 300 and 400 have the same video driver performance issues because they are very similar architectures which use basically the same thing with
everything.
There isn't any need to detect the family of the driver with Qualcomm anyway. If we ever need family specific bugs then we can implement real support
for that.
Performance issue on Adreno 400 series was due to us only detecting Adreno 300 series, and with Adreno 400 it wouldn't use the bugs, which would cause
it to use glBufferSubData, causing the huge performance hit.
Minor changes to DriverDetails

Fixes a typo where the official IMGTec drivers were said to be the OSS driver support.
Removes Mali GPU family detection just like I removed the Adreno family detection.
We don't support Mali Utgard anyway.
If we need family detection we can properly add it, right now it isn't needed.
VideoCommon: Don't specify the redundant in/out qualifier if GL_ARB_shading_language_420pack is supported.

Some driver developers interpreted "can" as "must" in the OpenGL specs. (I'm looking at you AMD)
Merge pull request #1717 from Armada651/geom-shaderpack

VideoCommon: Don't specify the redundant in/out qualifier if GL_ARB_shading_language_420pack is supported.
Merge pull request #1721 from Sonicadvance1/fix_adreno_400

Fixes Adreno 400 performance.
Corrected the buffer that is used by the GCAdapter thread.
Removed redundant code from the GC Adapter interface.
OGL: Disable geometry shaders on Intel's Windows drivers due to broken interface blocks.
Merge pull request #1722 from Armada651/intel-interface

OGL: Disable geometry shaders on Intel's Windows drivers due to broken interface blocks.
Merge pull request #1712 from skidau/GC-Adapter-thread-fix

Corrected the buffer that is used by the GCAdapter thread.
Manually revert d34418100be19fdbdf112febde3303edd48c9247
Merge branch 'master' of https://github.com/dolphin-emu/dolphin into VR-Hydra

Conflicts:
	Source/Core/VideoBackends/OGL/Render.cpp
If you extract and convert the Metroid Prime 2 demo from the bonus disc then it has code GM8E01.
That code is also shared by Metroid Prime 1 NTSC and the Metroid Prime 1 demo extracted from the Multi-Game demo disc.
So I am adding the MP2 BONUS Action Replay codes for disabling culling in the Metroid Prime 2 demo.
I haven't tested these codes yet, but they are the correct function addresses.
Metroid Prime 2: Echoes Bonus Disc recognition, and Action Replay codes
Merge pull request #1730 from comex/suaero

Remove the one commit (as far as I can tell) by soreau that added nontrivial material still in the tree
Merge pull request #1704 from phire/wii_ssl_segfault

De-memsetify Wii_SSL and fix segfault.
All known Metroid culling codes and recognition.