Monads in Rust