Add support for sendmsg/recvmsg

In preparation for support of socket ancillary data (RFC3542, Unix
sockets, ...), add support for sendmsg(2) and recvmsg(2).

recvmsg/3 and sendmsg/3 require a struct msghdr to be prepared
containing pointers to allocated memory (to be read into and to be
read from respectively). This buffer will have to be allocated using
procket:alloc/1.
alloc/1: return resources in same order as arg
sendmsg/recvmsg; return the number of bytes

Return the number of bytes sent/received. The msghdr structure contains
a pointer to an iovec which may consist of several buffers. The sendmsg
and recvmsg NIFs are not aware of the size and number of the buffers.
Support for ancillary socket data
Increment version for sendmsg/recvsg support
procket_msg: fix padding on 64-bit
Merge branch 'send-recv-msg'