Fix daemon's error handling
The current error handling has two flaws:
- The Daemon ctor is creating a config instance which might call Daemon::reportError() and thus a pure virtual function is called from a ctor, leading to a crash. Use a QTimer hack to move the init code out of the ctor
- Quitting the daemon after posting the error notification leads to the notification never being shown, defeating it's purpose