Updates for the tests

- Fixes some linting warnings
- Uses `bash` instead of `zsh` as it's more likely to be installed
- Adds some tests for `parseShell`.  Currently the last test is failing as `parseShell` doesn't like quoted long options such as `--long-opt="option with spaces"`.