searchbar: Ensure window is set before connecting to it

Until this patch, window was in an uncertain state when trying to connect
to it, because on_app_ready() was called before setup_ui().

https://bugzilla.gnome.org/show_bug.cgi?id=734486
app: Replace main_window by list of windows

This is needed to make multiple windows possible.

https://bugzilla.gnome.org/show_bug.cgi?id=734486
app-window: Add a workaround to a crash

Use 'this.window' to refer to Topbar's AppWindow in a closure to
avoid a (likely Vala) bug (734877) while destroying the closure.

This is needed to make multiple windows possible.

https://bugzilla.gnome.org/show_bug.cgi?id=734486
app-window: Closing window removes it from collection

This is needed to make multiple windows possible.

https://bugzilla.gnome.org/show_bug.cgi?id=734486
collection-toolbar: Show back button only on main window

This forbids non-main windows to access the collection view.

This is needed to make multiple windows possible.

https://bugzilla.gnome.org/show_bug.cgi?id=734486
display-toolbar: Show back button only on main window

This forbids non-main windows to access the collection view.

This is needed to make multiple windows possible.

https://bugzilla.gnome.org/show_bug.cgi?id=734486
app-window: Present window when machine activated

This presents a machine's window if the machine is activated and is
already running in a window, otherwise it creates a new window for the
machine.

This is needed to make multiple windows possible.

https://bugzilla.gnome.org/show_bug.cgi?id=734486
app: Populate new main window's collection

This is needed to make multiple windows possible.

https://bugzilla.gnome.org/show_bug.cgi?id=734486
selectionbar: Add 'Open in new windows' button

This is needed to make multiple windows possible.

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