core: A bunch of fixes to QEventDispatcherPM which actually made Qt timers work. This enabled the I-beam cursor and other timer-dependent operations such as the async directory refresh in the file dialog.