update_history_file() opened dzg.history in read mode without handling a
missing file. dzg.history is only created the first time it is written, so
on a fresh install the very first server connection raised FileNotFoundError
inside the post-launch cleanup callback:
_destroy_on_idle -> _add_to_history_and_return -> update_history_file
The exception propagated out of the GLib idle callback before destroy_dialog()
ran, orphaning the "Waiting for DayZ to launch" modal so it could never be
closed from the UI and its Cancel button was unresponsive.
Treat a missing history file as an empty history so the first connection
records history normally instead of crashing the cleanup callback.