Refactor socket handling, allow running as non-root on Mac OS X by using non-privileged ICMP (#7)
merge latest changes