move pipe2 compat to compat.lua
convert recvfrom to return extra values see #103