unix, windows: extend uv_udp_set_membership for IPv6 multicast.

Add uv__udp_set_membership6.
Modify uv_udp_set_membership to call uv__udp_set_membership6
  when IPv6 is used.
Add if_index to struct uv_interface_address_s for IPv6 multicasting.
Add UV_HANDLE_IPV6 to unix/interna.h

Signed-off-by: snoj <josh@snoj.us>
squash! fixings for a long overdue rebase.
squash! missing ,
squash! removed udp_send
squash! removed uv__udp_bind6
squash! fixed comments
squash! missing ; and fixed .code != UV_OK
squash! new ipv6 address testing
squash! fix v6 upgrade test
squash! replace ::0 with actual variable
squash! fix logic hole