gdk/x11: Adjust the pixel format's color size

The color size is the minimum value between all the color buffers.
gdk: Add getters for GdkGLPixelFormat properties
gl: Rework pixel format validation

Instead of modifying the pixel format in place, we allow separating the
pixel format from the effective pixel format we found.

This means that caller code can keep a reference to the pixel format it
creates, and re-use it to create new contexts on different displays,
while the GL context can keep a reference to a valid pixel format to let
the use query it.

This allows GtkGLArea to keep its own user-supplied pixel format and
reuse it without adding additional constraints as a result of a
validation on a specific GdkDisplay.
gdk/x11: Respect GdkGLPixelFormat:accum-size

We are currently ignoring it.
gdk: Add GdkGLPixelFormat:stereo

Missing pixel format attribute for stereoscopic buffers.
gdk: Document pixel format getters

And add the implementation of get_aux_buffers().