in reply to Event loop with rules handling

As a start, I think that you could use the Event module as a generic event handler. It even has a 'watcher' as per your description and allows you to register and unregister handlers as appropriate. Handlers are in the form of callback subs. There are no specialized rule methods per se, but if simple if-then statments suffice, then there don't need to be.

-Mark