Fixed a segfault in GTK2.GdkImage()->set().
Previously, g_object_unref(THIS->obj) was called before the call to
gdkimage_from_pikeimage() to make sure the old object was unreffed in
the case that the latter function threw an error. This was all good
and well, except for the fact that THIS->obj was actually _used_ by
gdkimage_from_pikeimage(), which turned out to be a bit difficult when
said object was already freed.
The logic is now changed so that gdkimage_from_pikeimage() is
responsible for unreffing the object as needed, and also for making
sure that THIS->obj has an appropriate value if and when an exception
is thrown (like for example, not the old unreffed object).