gvfsjobunmount: don't unmount if dialog was cancelled

If the dialog about blocking processes was cancelled,
G_IO_ERROR_FAILED_HANDLED will be returned and backend
won't be unmounted.

https://bugzilla.gnome.org/show_bug.cgi?id=710986
daemon: Set callback to avoid endless loop during unmount

It is not possible to respond to unmount dialog after 2 sec timeout,
because the callback isn't set properly. The dialog reopens every 2
seconds until the daemon is killed.

Because a dbus method is called every 2 seconds, we may get multiple
replies (e.g. one normal reply and several error replies due to a closed
connection).  Handle this by ignoring all but the first reply.

Based on a patch by Ondrej Holy.

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