Rust upgrade

Picks up to the original at 83cd488b164074ed5dc09be8c5989d5a04a6d8ed

r? @jdm, @ms2ger