all functions: access error-free stream and stay in the error monad

This is a more pleasant alternative to `to_exn` functions.