add a GstGLContext object that will be the basis of OpenGL contexts

At the moment it just sits in between GstGLDisplay and GstGLWindow
performing some of the stuff that GstGLWindow used to do.
context: add subclasses for the different platforms (egl, glx, wgl, etc)

- most code taken from the Window subclasses
- tested combinations: xEGL, GLX, Wayland+EGL, Cocoa (under GNUStep), WGL (Wine)
android: port to GstGLContext

not tested
move egl into its own directory
x11: fix build for clang