Use a CLI parsing library in Praefect
Praefect is using a custom approach to parsing CLI and managing subcommands. This has turned eventually quite messy. There are a number of good libraries that handle setting up subcommands, parsing arguments and generating help texts. Rather than unnecessarily implementing our own CLI toolkit for Gitaly, we should use an existing library that gives us what we need.
One such library is https://cli.urfave.org/v2/getting-started/. It has a number of features that would make our life easier like subcommand hierarchies and help text generation. This makes it easier to provide consistent CLI experience with good help texts and less maintenance burdens.