Experimenting with more structured ways to handle command-line input/output in Rust