Provide a common API across `Option` and the `Ok` and `Err` variants of `Result`.

[Rendered](https://github.com/bjz/rfcs/blob/option-result-api/active/0000-option-result-api.md)
Indeed - I think implementing the most common case directly on `Result` is the right way to go.