GtkGLArea: Add create-context signal

This lets you hook into the GL context creation which is useful
if you want to share one GL context between GtkGLArea widgets.
GtkGLArea: Don't dispose gl context on unrealize

This was done to ensure the context is not current, but this is
pretty broken for shared contexts. We now just make it non-current.
GdkGLContext: Add display property

We need to use this in the code path where we make the context
non-current during destroy, because at that point the window
could be destroyed and gdk_window_get_display() would return
NULL.
GtkGLArea: Correctly position/size input window on realize