ported gethostbyname -> getaddrinfo
improved and safer parse_uri

New parse_uri should be safer, stricter, report more problems and
actually supports ipv6 address (eg. [fe80::290:fbff:fe3b:81db]).
move to an annonymous union with sockaddr_in6
better formatting for ipv6, just in case
more ipv6 fixes
better get_fqdn using getaddrinfo and AI_CANONNAME

Also properly handle the numeric ipv6 case by surrounding it in [ ].
there's no reason to check if ip when using getaddrinfo
make better use of getnameinfo to get the port too
the rawsock support is ipv4 only
make create_sockets AF-independent
non-connected sockets are sending to the wrong address
completely remove sockaddr from the connection data
inet_ntop for raw icmp socket should be AF_INET

This code path is still ipv4 only and not AF-independent yet
we only care about storage here, nothing more
make raw socket variables more local
make source address reporting AF-indepentent
target_dot/source_dot are more appropriatly sized as NI_MAXSERV
simplify create_sockets getsockname logic
add a README.md