On my local version, I slighly modified the behavior of IO.nread on channels
Before, it was reading using a single call to "input" without trying to read
Now it's making several calls to input in order to fill the string. This is
different behavior that really_input because is the end of file is reached,
or if "input" is returning <= 0 then nread is returning the number of bytes
I'll commit if there are no complains on this new behavior.