This result leaves behind the `Optional` nature of the upstream `result` package, and instead `raise`s when trying to unwrap a value from and error, or vice-versa. Also, it introduces the `resultify` decorator, which allows to easily convert ordinary functions raising `Exception` types into functions returning `Ok`/`Err`.