G_DECLARE_FINAL_TYPE was introduced in glib 2.44. We shall use that now so that lots of boilerplate code can be reduced. https://bugzilla.gnome.org/show_bug.cgi?id=770278
Instead of hardcoding an accelerator in the ui file, use gtk_application_set_accels_for_action.
This example demonstrates property actions and object binding.