Remove the menu bar

The dummy menu bar at the top of the window has been removed. This
will eventually be replaced with a system menu bar on OS X. It's only
for show on the other OSs anyway so it's probably not worth trying to
get it to conditionally appear.
Add a resize handle on Mac OS X

In an NSWindow on OS X, there is a special property to make it
automatically draw a little resize handle in the bottom right corner
of the window. This patch adds the necessary call to make it set that
property. The call has to be written in Objective-C so there is now a
separate function in a .m file to initialise on onscreen framebuffer
for OS X. There are some tweaks to the configure script and the
Makefile to allow building ObjC files. Notably, some of the CFLAGS are
now moved to CPPFLAGS so that they will be passed to the ObjC compiler
too.

When using GL with an NSWindow, the framebuffer blats over the resize
handle drawn by Cocoa. It is however still functional even though it
is invisible. To workaround this, Rig now manually draws the resize
handle using a RutImage.
Generate an Info.plist file for OS X

The configure script now generates a description file for the app
bundle for OS X. This needs to involve the configure script so that it
can automatically have the correct version number.
Set a window title with the version number

The main code now sets a window title when building with SDL. The
window title includes the version number. This is stored in a header
called rig-defines.h which is generated by the configure script.
Add a file menu on OS X for opening a different file

The OS X code now adds a file menu to save the current document and to
open a different one. The currente filename has been moved from a
static global variable to being a member of RigData. Rig doesn't
really cope with changing the file yet so this actually just makes it
crash.
Show alert dialogs from the automatic update on OS X

When Rig is started on OS X it will now check for specific files that
the automatic updater script leaves to report status. One of the files
is used to report errors and the other is used to report a successful
update. Both of these just cause it to display a modal dialog using
Cocoa.
rut-entity: Remove all components on free

The entity owns a reference to its components but it wasn't unreffing
them on free so they would leak.
rut-ui-viewport: Unref the doc transform on free

The ui viewport holds a reference to its doc transform which is was
leaking.
Clean up some resources in fini()

RigData holds a lot of resources created in init() which were not
being freed in fini(). This fixes enough of them so that at least the
last reference to the CoglOnscreen is removed, but there may be more.
rut-camera: Fix ref counting the input regions

Previously when an input region was added to a camera it wasn't taking
a reference. However it would then remove a reference on each input
region when the camera is destroyed. This fixes it to keep a reference
on the input regions that are added.
Add rut_shell_quit

This adds a mechanism to set the shell->quit flag so that the main
loop will quit.
osx: Open new files by restarting the main loop

When the open file dialog is used on OS X, it will now store the
filename in the RigData struct and then quit the main loop. The main()
function will now detect this filename and restart. This is a bit of a
sledgehammer to avoid having to work out how to clean up the graph
properly when a new file is loaded.
osx: Cleanup the OSX-specific state from fini()

This adds a rig_osx_deinit function which cleans up the state created
in the init function. The state is now stored in a pointer hanging off
the RigData struct. In particular this stops it from repeatedly adding
new file menus whenever a new file is added.