MainNoGUI: Remove old OS X backend that doesn't work, rearchitect
X11Utils: Simplify the Fullscreen interface

Since we only use the toggle action, only keep that.
X11Utils: Explicitly pass the window to fullscreen into ToggleFullscreen

MainNoGUI is going to create its own window soon, and we need to
fullscreen that one instead of the GLX window.
MainNoGUI: Supply a window in Host_GetRenderHandle

Our existing code was relying on the GLX backend to create the GLX
window properly, and for the rest of the code to patch that up, sort
of. If we rely on Host_GetRenderHandle() returning a valid window, we
can do a lot better about this.

Create a simple window inside MainNoGUI to make this happen.
MainNoGUI: Move a majority of the event handling from the GLX backend

The only reason the GLX backend handled this at all was because
MainNoGUI didn't make its own window before. This is unused in DolphinWX
builds.
X11_Util: Resize the GLX window by listening to events on the parent

We now have two cases: the GLX window is parented into a frame, or it's
parented into the MainNoGUI host. In both cases, the GLX window should
be locked to the size of the parent, so just sync it up based on that.
EGL: Stop the window_handle shuffling as well
Core: Remove Core::GetWindowHandle

Finally, it's unused. Whoa.
Core: Don't pass through a reference to the window handle

Now that MainNoGUI is properly architected and GLX doesn't need to
sometimes craft its own windows sometimes which we have to thread back
into MainNoGUI, we don't need to thread the window handle that GLX
creates at all.

This removes the reference to pass back here, and the g_pWindowHandle
always be the same as the window returned by Host_GetRenderHandle().

A future cleanup could remove g_pWindowHandle entirely.
MainNoGUI: Implement Host_UpdateTitle
Core: Remove UpdateFPSDisplay

This is effectively unused, as the window handles that we pass to the
GLInterface are window handles for the frame which isn't ever a real
toplevel window. Host_UpdateTitle is what actually sets the proper title
on the render window.
GLInterface: Destroy GLWin

Everything is now safely tucked inside each individual GLInterface.
X11_Util: Don't specify a background pixel

This causes flickering when resizing the window, which looks horrid
and we shouldn't do it.
Add back X11 support to EGL

Refactor the EGL backend to provide a platform separation here, which is
better abstracted away than the old EGL/X11 implementation.