I want you to design a abstraction for running Podman that cleans things up like the one that's already in this project, but that supports streaming output using an async generator. Make sure it's tested properly, so I just need non-streaming input but streaming output, as well as the ability to interrupt streams by sort of terminating early. So it's like a weird mix of interactive and the Podman thing. In particular, I may get multiple lines of output that I'm streaming out, and I may wish to sort of interrupt after n lines. Also, the stream should be by line and should work with strings and not bytes, both the input and the output. And I guess there should be a bound on the maximum line length read in the sort of spirit of everything else in this project.