Refactors send_request internals to work primarily with streams, and
exposes Needle as a proper non-flowing streams2 stream.