shell implemented in Rust