D3D: Use std::strings for Compile[x]Shader and CompileAndCreate[x]Shader

With strings, we don't need to care about passing in a length, since it internally stores it. So now, we don't even need a length parameter for these functions anymore as well.
This also kills off some sprintf_s calls.
Merge pull request #576 from lioncash/shader-string

D3D: Use std::strings for Compile[x]Shader and CompileAndCreate[x]Shader
DolphinWX: Remove a wx  2.9.0 and 2.8.0 version check in GameListCtrl
Merge pull request #583 from lioncash/dat-legacy-code

DolphinWX: Remove a wx 2.9.0 and 2.8.0 version check in GameListCtrl
DolphinWX: Bind the drop handling function to the frame with Bind, not Connect.
Merge pull request #584 from lioncash/bind

DolphinWX: Bind the drop handling function to the frame with Bind, not Connect
CMake: warn on missing declarations
mark all local functions as static
CMake: warn on missing variable declarations
mark all local variables as static
avoid the extern keyword in .cpp files
remove unused globals

Also change globals into statics which are only used in one file