fix(events): resolve async events without any listener
refactor(launcher): extract timeout, retry, process

So that we can easily reuse only some features.
chore: add shell script to start mocha watcher