unix, windows: do not set SO_REUSEADDR by default on udp

Add UV_UDP_REUSEADDR flag instead, which can be passed to uv_udp_bind.
If the udp handle is unbound when uv_udp_set_memberhsip or
uv_udp_set_multicast_interface is called, the handle will be bound with
UV_UDP_REUSEADDR set.

Moar love for UDP. /cc @bnoordhuis, @indutny, @piscisaureus

Hello https://github.com/joyent/node/issues/5425

PS: I'll ran the test suite on Windows tonight, so far tests pass on my Linux machine, lets see what you got Jenkins!