added protocol family argument to Bind message

added new socket option to join a multicast group

This commit provides the means to specify the protocol family (e.g., IPv4 or IPv6) when an actor attempts to bind to a socket using IO(Udp). On systems that are dual stacked, the current implementation will prefer IPv6; preventing a socket from joining an IPv4 multicast group.
That line is never going to get called. It was only put there to make the type system happy. We couldn't think of a better solution. We know it's ugly, and we're looking for suggestions.