Overlay: Rework Code.

To make the D3D11 overlay changes (#177) better review-able and acceptable, I extracted the non-d3d11 changes from the others and put them into this PR.

Hopefully this will speed things up.

* Separate DXGI logic from D3D10 into a separate file dxgi.cpp
* Structure code and logic, introduce additional functions
* Introduce constants
* Code commenting
* d3d9.cpp:
* * Access devMap via std::find rather than operator[]
* * Introduce class Stash to temporarily set variable value and revert on
destruction
* * Move logic to function findOriginalDevice
* * Use widestring for modulename (consistency)
* * Implement Hook for Direct3DCreate9Ex
* * Move function IsFnInModule to common lib.cpp/.h
* opengl.cpp:
* * Add whitespace to format code
* * Fix logging scope prefix
* * Remove static global variable