A continuation-based stream processor implemented as an Arrow. This version generalizes the SP type described in John Hughes "Generalising Monads to Arrows" to function as a wrapper for arbitrary monads.