I think this is a better fix. `as_io` should stay a reasonably general purpose io helper. Don't want magic handling of 2-tuples baked in.