command defines structures for configuring a command-line binary’s
command(s). A binary might have several (sub-)Commands (e.g. like Git, where
commit, log, etc. are all commands), or it might just have a single Command
if it’s entirely a single-use binary.
Values is a structure which contains all of the parsed command-line flag
values (or the default values for those flags). If parsing fails (including
if some required flags weren’t specified, for example), an error is
returned.