fails:IO#getbyte returns the next byte from the stream
fails:IO#getbyte returns nil when invoked at the end of the stream
fails:IO#getbyte returns nil on empty stream
fails:IO#getbyte raises IOError on closed stream
