AddSubCmd adds a sub-command closure to the workload cli.
Most commands are global singletons and hooked together in init functions but the workload ones do fancy things with making each generator in `workload.Registered` into a subcommand. This means the commands need to be generated after `workload.Registered` is fully populated, but the latter is now sometimes done in the outermost possible place (main.go) and so its init runs last. Instead, we return a closure that is called in the main function, which is guaranteed to run after all inits.
CmdHelper handles common workload command logic, such as error handling and ensuring the database name in the connection string (if provided) matches the expected one.
HandleErrs wraps a `RunE` cobra function to print an error but not the usage.
SetCmdDefaults ensures that the provided Cobra command will properly report an error if the user specifies an invalid subcommand. It is safe to call on any Cobra command.
This is a wontfix bug in Cobra: https://github.com/spf13/cobra/pull/329
WorkloadCmd returns a new command that can serve as the root of the workload command tree.