Updated the pipe stream class.

Allows blocking only until there exists one byte to read. Includes an
additional property to detect where there is data to read.