Socket::join, ::drop: allow to set interface index for IPv6
Socket::address: use in_port_t for port numbers
Socket::address: allow printing to std::ostream
Socket::store: use existing len method