'net' module: tests and fixes

So far this updates #308 with a very basic test suite, and fixes IPv4 and/or IPv6 address detection.
I think that in order to work the `.setTimeout` actually needs to call [CC3k's nvmem](https://github.com/tessel/firmware/blob/master/src/cc3000/utility/netapp.h#L184). Otherwise the timeout will default to 10-20s for periods of inactivity, see https://forums.tessel.io/t/tcp-connection-reset/684

Node's sockets by default don't have a timeout. However we only have 7 sockets... I'm of the opinion that we should internally call a `.setTimeout` of 20s on socket creation (because the socket settings are stored in CC3k's NVMEM and we don't know the last saved state) and give the user the ability to explicitly set the timeout to longer periods.