Feature/monitor

I'm not sure how you see the current monitor, but for large application where promise are created across multiple modules, it doesn't really help to only know about where is the rejection occurrence.

Like from a regular exception stack, where you the error is pruned, along with the context of all the functions calls that leads to this error. Promise monitor shall probably work in a similar way - where it traces context all the way back along the promise chain, util the very early promise where this rejected promise originates from.

I've created some smallest change I can make that implements this idea, just load `test/monitor/done.js` to see it in effect.

I see there're some ongoing work that happens on dev branch for similar? purpose, but I'd opt to open this as a PR on master, so we can talk about this idea.