Improved gtk_init error handling

Replaced gtk_init_check with gtk_init_with_args so that we can return
the actual GTK error if it fails instead of a generic error.