Remove the error argument to cogl_texture_2d_new_with_size

The Cogl API has changed to lazily allocate the textures constructed
with just a size so the error argument is no longer necessary.
Don't try to update the dots buffer if there are no dots

Previously if there are no dots then Rig would still try to map a
zero-sized range of the dots buffer that it allocates. When that fails
it would then try to allocate a zero-sized buffer and update a sub
region of the attribute buffer from that. Both of these will probably
generate GL errors. This patch makes it just leave the buffer alone
when there are no dots.
Add a RutBin

This adds a RutBin widget which is a container to contain a single
child. The child can be position with padding around all four of its
sides. The position of the child when there is more space than it
needs can be customised for each axis to either be at the left/top,
center, bottom/right or to expand to fill the space.
rut-text: Add a hint text property

The hint text will be displayed on an editable text widget whenever
the normal text is empty and the widget doesn't have keyboard focus.
This will be used in the search control for the assets view so that
the user doesn't have to manually remove the hint text.
Use a RutBin for the search widget instead of a fixed size

The search wiget for the assets is now placed inside a RutBin which is
directly placed in the stack for the left side of the split view. That
way the bin will always have the full size of the split. Some padding
is set on the bin to position the search widget and it is set to
expand along the x axis. That way the search widget will automatically
change size when the split is moved instead of having an arbitrary
fixed size.
Set the hint text on the assets search widget

Instead of setting some normal text which the user has to manually
remove, the search widget now has a hint text which will automatically
be removed when the widget gets focus.