unix: add uv_udp_try_send

UDP messages can be sent with 0 content.
In that case the function returns also 0 (sent buffer size) which
is ambigious because we don't know whether the message has been
sent or not. So we return UV_EAGAIN which is different compared
to the stream_try_write API.
win: add uv_udp_try_send
test: add test for uv_udp_try_send