When an exception occurs in the DmpClient, send a message about it to the main thread using QObject::startTimer() and let the main thread display the error in a dialog. (Remove client_stopped(), it serves no purpose.)
When we failed to connect, show the error in a dialog instead of std::terminating.