Support generic streams, not just Buffer

@purplefox can you review this ?
I'd say a good default is some small number greater than 1 ;) The previous value of 4 seems fine to me.