gcc has optimizations for include guards that only work if they are outermost in the the header. https://bugzilla.gnome.org/show_bug.cgi?id=689810
Previously people used GDK_GPOINTER_TO_NATIVE_WINDOW() for this, but native windows are going away, so we need a replacement.
Now gdkx.h is a clean header equivalent to gdk.h.