Fix a crash upon READ or WRITE failure on POSIX systems

When read(3) or write(3) fail, they return -1. However, the `actual` field of `REBREQ` used to store this return value is unsigned. This on the one hand means, that `< 0` error checks will never fire. Further, `actual` is set to max value, which can cause errors further down the line, such as in the actual READ reactor, `Read_File_Port`, which assumes that `actual` is smaller than `len`.

This commit properly handles read/write errors indicated by -1.

This fixes the crash aspect of [CureCode issue #1675](http://issue.cc/r3/1675).