Merge iostreams to release. Fixes #8315, #8385, #8460.
Not merging the fallthrough macro, as config support hasn't been merged yet. And not merging the build changes, as I don't know if they're ready.