This also implements a basic single shot timer support, which has one caveat: it leaks the closures right now.