split-view: Remove some unused constants

It looks like these were left over from a copy-and-paste of the
RutInspector.
split-view: Use a constant to specify the size of the grab area

Previously the size of the grab error was hard coded in the code.
There was a discrepency between the size of the painted area and the
size of the actual input region for the grab. The input region was one
pixel bigger than the area allocated for it so it would end up
overlapping with the area for one of the children. This has been fixed
so that both sizes are now the same.
split-view: Set the child1 transform before the size

The code for handling a size change on the main editor area assumes
that the transform for the area is also correct in order to position
the window-relative viewport. This was not previously correct because
the transform was set after setting the size so it would end up using
the old position for the viewport. This patch just swaps the order so
that it works.
run with glib mainloop when using SDL
shell: Fix quitting the main loop

Previously the SDL backend was trying to quit by setting shell->quit
but this flag is completely ignored now that it is using the GLib
mainloop. This patch changes it to call g_main_loop_quit instead.
Add rut_shell_add_onscreen so that the shell can track onscreens

It's useful for the RutShell to be aware of all onscreen windows that
are used in the application so that it can eventually report events to
the right onscreen when multiple windows are used. This adds a
rut_shell_add_onscreen() function which adds the onscreen to a list.
The onscreen is automatically removed from the list when it is
destroyed.
Add a function to get the CoglOnscreen which corresponds to an event

Eventually Rig will want to support multiple onscreen windows and
we'll need to determine which onscreen relates to which event. This
adds a function called rut_input_event_get_onscreen which returns the
onscreen. On SDL2 it will walk the list of known onscreen buffers to
find one which corresponds to an SDL window with the same ID. On all
other backends there can only be one window so it will just return
that.
Add support for setting the mouse cursor image in SDL2

There is now a new function called rut_shell_set_cursor which
temporarily changes the cursor image. This takes an enum of predefined
images. When using the SDL2 backend, this will set the cursor to the
corresponding system cursor.

This function is called by the shell in response to every mouse motion
event when no other handler calls it. The idea is that a widget can
change the cursor whenever the pointer enters its input region and the
shell will then automatically change it back when the pointer leaves
that input region.
split-view: Show a resize cursor when the pointer is over the split

When the mouse pointer is over the split the split view now changes
the cursor to a resize image to make it easier to find the line to
drag.
Add a GTK/X11 backend for RutShell

RutShell now has a backend to get events via GDK. It will force Cogl
to use an X11 winsys. It will then ask Cogl for the X window ID and
create a foreign GDK window in order to get events.

The backend is optional with a configure option called --enable-gtk.
Move the init_title() function to be a rut_shell method

The function to set the title on an onscreen has been moved to a
generic RutShell method. An implementation has also been added for the
GDK backend.
Stash