The main purpose of these is to offer rerouting where rerouting is appropriate. Mostly derived from existing examples in rust-lang/rust.