fn shell_split(s: &str) -> Vec<String>
Simple shell-like splitting of a string into words. Handles basic quoting (double quotes) but not single quotes or escapes.