expose test http client

I have started using the same test client you use for your tests in some of mine - it is extremely worthwhile not having to rewrite all those abstractions.  I am, unfortunately, not using the should testing framework, so simply requiring common.js was somewhat troublesome.

This patch merely pulls out the base functionality without breaking the tests for socket.io.

Please tell me if you want me to do any refactoring.  Thanks!