Lets subsequent mapping/folding operations turn into streamed operations, e.g. map f . map g ~> map (f . g).