New io::stream. Make task.enqueue_deps accept iterator