async-listener: updated to use new #6011 API.
async-listener: brought up to date with node #6011
test: scenario that trevnorris and I had to fix

A memento of a fun six hours. Should work both with the async-listener
polyfill and node PR #6011.
test: added tracer test scenarios
deps: latest async-listener for 0.8.x zlib fix
release: 0.8.x compatibility
namespace: added bindEmitter method, test & docs

Gave it a more explicit name than domain.add to boot. Would like to make
it faster, but this version works.
release: 2.3.0 - added namespace.bindEmitter
docs: typo
deps: updated to latest version of async-listener
release: 2.3.1 - update deps
test: don't use setImmediate in tests

Unless it's necessary, don't use 0.8+ idioms so the test suite can be
run under 0.6.x.
context: don't assume ee._events already exists

Older versions of Node sometimes initialized the events on EventEmitters
lazily for ServerRequests. This caused bound emitters to explode because
they were testing for properties on _events, which might not have
existed at the time of the call.
bindEmitter: only rebind when listener has changed

Also put some documentation in there so somebody else has a hope of
understanding what I'm trying to do.
release: 2.3.2 - bindEmitter fixes
bindEmitter: rewrap properly (and not too much)

Made sure the name of the namespace is available for contexts, so a
handler can be bound to multiple namespaces without barfing. Also
switched to using try-finally for application + cleanup, which may turn
out to be a performance 'no' but feels cleaner. Finally, added
Readable-specific tests to ensure that rewrapping is working properly.
release: 2.3.3 - properly bind emitters
bindEmitter: .removeListener needs unwrapped events

If I'm going to monkeypatch some of the EE behavior, I need to make sure
I catch everything, is the lesson of this story. See the new test case
for details, but the short version is that I'm binding handlers to
namespaces for the duration of an .emit call, but it's possible that a
handler will call .removeListener during that call, and .removeListener
is looking for the unwrapped handler. Several Connect middlewares do
weird things with adding listeners, which triggers an infinite death
spiral of resource leakage.
release: 2.3.4 - fix bug in EventEmitter.removeListener
test: fix monkeypatching checks

As long as the core timer methods are wrapped, we don't need to worry
about wrapping the globally exposed shims. Actually a change in the
async-listener shim, but until these tests are moved over there,
maintaining here.