Add a simple dispatcher to Poller

So now you can use it to subscribe to events of task lifecycle
Add some tests