GsShellCategory: cancel loading when appropriate

Use our own cancellable, and cancel a pending subcategory load
when the user selects another subcategory.
Only present the window when the overview is complete

Change GsShell to emit a signal when the overview is fully populated,
and only present the window when that is emitted.

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