Port to GApplication/GtkApplication (GTK2 & GTK3)

known issue:
 a harmless failed assertion at startup:
`IA__gtk_icon_theme_get_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed`
`Gtk-CRITICAL **: IA__gtk_icon_theme_append_search_path: assertion 'GTK_IS_ICON_THEME (icon_theme)' failed`
caused by the move of gtk_icon_theme_append_search_path call (with gtk_icon_theme_get_default() as its first argument) to caja_application_startup().