fixup tests

the callback to `Channel#join` doesn't receive the new channel object as
the first argument. this was causing tests to fail. i tweaked the tests
to just use the return value of `join` instead of the parameter in the
interest of just getting the tests to pass.

ideally i would fix the argument, but that was a bit more involved, and
i just want to debug the network error problem.
correctly listen for network error events
added unit test for network error emission
Merge pull request #68 from aaronj1335/net-error-event-listener

correctly listen for network error events