libstd: Add unwrap_or and unwrap_or_handle to Result
auto merge of #13475 : Ryman/rust/result_unwrap_or_else, r=brson

It might make more sense to mirror `Option`'s `unwrap_or_else` but I've left it as `handle` as it feels more explicit about the signature difference.