Mini refactor and test network util

### Changelog
* Mini module refactor.
* Add tests for all functions not requiring network access.

### Note
Why do we need a separate `get_my_ip` function? Doesn't `stun.get_ip_info` give us all we need?
can't wait to have OpenBazaar to be king and then repurpose the protocol to have smart contracts that help define a distributed ad-market place. ;) #EverythingMustBeDecentralized