Fix dynamic shell completions by correcting parameter names Dynamic completions for the CLI were not working because completion functions used `_prefix` as the first parameter name instead of `prefix`. This is incompatible with how `argcomplete` passes it's arguments. Add regression test for the prefix parameter as well as some basic shell completion testing.