This is in order to be able to call several socket.send() calls
to different targets synchronously.
The format changed to host/32:port/16:size/16:[data/??].
Limited to a single membership, handled in target specific createsocket
which is provided with the 'options' object to get multicastGroup and
multicastIp from. Also due to the way the arguments are passed to the
net.createsocket the socket.addMembership() needs to be called before
socket.bind().
Added SO_REUSEPORT so that binding e.g. to mDNS port 5353 is possible
on an osx machine.
Provided the second 'data' event `info` argument to be able to reply
(message origin host/port combination).
Added dgram_send `options` and other jsvUnlock() calls to avoid memleaks
The send() method contains the destination host/port which is
put into the connection.opt (options) structure and later used
for the sendto() within net->send() call (network_linux).