initial commit for adjusting the timeout of a pipe
make timeout optional when constructing the object
better naming.
added test for timeout
cleanups and added test case.
better naming.
Merge branch 'timeout'
more cleanups.