DolphinQt: Games now boot!

I also refactored GLInterface files into the OGLPlugin (@Sonicadvance1 should review that).

Note that some of this code dates back from the old DolphinQt days when @neobrain was working on it, and as such it's a bit of a mess and may not be up to date (but it worked for me at least :P), so @lioncash should go through it carefully.

Also cc @comex so he can test this on Mac.
Again, why does this need to be exposed instead of only the base minimum information necessary? Returning the direct pointer from a unique_ptr isn't very good design.