clock: Monitor the wall clock w/o libgnome-desktop-3
This removes the minor dependency on libgnome-desktop-3, as well as being a slightly more reliable wall clock: rather than using g_timeout_add, it uses timerfds, as recommended by systemd (see org.freedesktop.timedate1(8)). In other words, it can easily notice when the system clock is changed and update itself accordingly.
Unfortunately, this does bring in a rather odd effect: attempting to read from the timerfd after an inotify event comes in hangs. It's not entirely clear why, and I'm still working on reproducing it separately to find out, but just setting it to be TFD_NONBLOCK and then ignoring EAGAIN errors is a rather simple workaround.