Trampoline cleanups
Cleanup a bit the code around GjsCallbackTrampoline, use a bit more of C++.
I didn't change the refcounting system, as that would probably need to introduce a wrapper more and some other complications, so I focused mostly in getting up and running a constructor and destructor, splitting the functions a bit.
Also removed the workaround we used to cleanup the async calls GClosure
's, and do that during the GC callback instead.
This is based on !488 (merged), so that one should come earlier than this.