Fix racy glib assertion failure

Use g_signal_connect_object() to establish automatic and race-free signal
disconnection instead of the hand-crafted mechanism.
info bars: Explicitely move focus back to the editor when closing

This does not seem to happen automatically, at least on GTK3.
info bars: Show additional save button for the "reload file?" info bar

This allows overwriting the file right from the info bar.
document.c: Restore lost document_set_text_changed(doc, TRUE) call

It got lost by accident in 5117940.
document.c: Immediately mark as changed when document is externally deleted

Before infobar it didn't matter because the dialog was modal and interaction
with the doc was impossible. Now that you can interact it the doc should
be marked changed immediately.
document.c: Handle documents with pending info bars on close

When an info bar is shown the document is set to changed. But it is
prevented from being saved until the the info bar is dealt with by the user.
However, when closing the document, this is not desirable because the pop up
dialog ("save changes?") offers to save the file which should work regardless
of an info bar.