Modest clean up of pipe_of_body in async backend

There are no apparent semantic changes. However Pipe.close might
be called more in some cases (doens't make a difference).

I know this doesn't really improve anything and the "cleanup" is subjective however this did feel like a special case. I'm organizing my improvements I have to the async backend so it's better to just get the trivial stuff over with.