Building Reusable Code with Rust