NetworkProvider now is ip4/ip6 depending on the bind address, defaults to ipv6.
Reset uses adl swap to reset the socket to guard against bad state due to exceptions.
Added unfinished test class for NetworkProviderSynchronous.