Plus some minor tweaks and more docs.
Update for changes in async-interop/event-loop. Do not invalidate delay and defer on disable. Better watcher ID generation. Throw if enabling invalid watcher.