Add delay and once

`delay` takes a time in ms and a signal and executes events from the signal after a delay of ms

`once` takes a signal and executes the first event from that signal and then stops
Agreed, `once` isn't a good idea. That sort of thing strikes me as better handled by a promise library, or just ContT.

`delay` is useful, though. No need to close the pull request. :)