'net' module: tests and fixes

So far this updates #308 with a very basic test suite, and fixes IPv4 and/or IPv6 address detection.
How many tests should there be in total? I'm getting 112.
I think you're gonna have to change this to look for the tinytap module in the node_modules folder in order for Travis to pass
`require('../../node_modules/tinytap/src/tester.js' || 'tinytap')`

I'm also getting intermittent failures on test no 106, but only when I test through `npm test`. Individually running this test file with tap works just fine. Not sure what's up with that, could be tinytap doing something funky.