refactor: use external control flow libraries
refactor: use util.inherits
refactor: remove createListener

context is already correct
Merge pull request #153 from aheckmann/refactoring

Refactoring