Stdio.File(): allow reading more than 2GB at once
* use size_t instead of int for the number of bytes to read
* use flags to control the read behavior
* in blocking mode the interpreter lock is only released and re-aquired
once per call
These changes apply both to read(2) and recvmsg(2).