IPv6 support

I took some time to change the EnetAdress type to hold IPv6 and iPv4 addresses. I still need to test this, and what not, but I'd figure I'd submit a pull request anyways to see, if you like my current methodology, and what I might change if you don't to eventually get IPv6 support upstream.