Improved sanity checking.

 * Set EINVAL and return -1 if length or offset negative.
 * No-op if length 0 for pread.
 * Specify PROTOTYPE for subs.
 * Better size RETVAL to what p* return.
 * Tests for above and fixes to tests.
Remove TODO after puzzling over perlguts and whatnot.