Fix window refcycle
Previously we caused a refcycle by holding onto a strong reference to the HdyApplicationWindow from within the app. GTK itself holds onto a reference to top-level windows, so we don't need to manually.
Instead, we should hold a weak reference. This fixes the issue where the app would not close after the main window is destroyed.