test: error handling should be scoped to specific handlers

only error handlers defined at the time the async call is created should be
called when an error begins to bubble out of an async callback
test: add test for adding async-listeners in flight

listeners defined *after* an async callback is scheduled should not
affect that callback