closure: Fix reference counting of closures, unbreak tests
closure: Fix reference counting of closures, unbreak tests

Glib no longer finalizes type classes, plugin or not. So essentially gjs
will 'leak' the classes that it registers in gjs_register_type().

GClosures that have been associated with such leaked classes (eg: through
g_signal_override_class_closure()) will leak too. However the javascript
context, object and runtime associated with the Closure do not leak.

Make our memory reference tracking for closures to track the javascript
related contents of the Closure and not the GClosure itself.

https://bugzilla.gnome.org/show_bug.cgi?id=693676

djdeath/gjs,pixunil/cjs,djdeath/gjs,endlessm/gjs,endlessm/gjs,mtwebster/cjs,djdeath/gjs,pixunil/cjs,mtwebster/cjs,pixunil/cjs,pixunil/cjs,endlessm/gjs,endlessm/gjs,endlessm/gjs,djdeath/gjs,mtwebster/cjs,mtwebster/cjs,pixunil/cjs,mtwebster/cjs,djdeath/gjs