collector: Keep a weak reference to the singleton
Since we don't keep a strong reference, our pointer might become invalid if all the references we gave out were removed.
Fixes a crash happening when opening a second file chooser dialog in GEdit, Builder or Firefox. Doesn't trigger in the widget factory, though.