Clap has been choosen for argument parsing for the following reasons:
- it's a wildly used and maintained crate
- it can deal with OS encoding making it suitable for any encoding
- it supports nonambiguous prefix matching as already available in hg
- it will soon allow for structopts-style declarative pattern instead of the currently used builder pattern
Clap will exit here with the help message and an error code. Use get_matches_safe to properly fall back to "UNIMPLEMENTED_COMMAND" if need be.