Update run_version() and run_subcommands() to return enveloped response instead of printing directly