update fullio api
add PipeCloser
add pipe_test & update min{buff,file}size