Flushing
--------

Check to see if its an input stream, if so then we mark as flushed
Else loop and see if it empties.