menu implementation

The menu cannot be empty, since we know that it has length 4 (its type is `[&str, ..4]`).