Add a juju subcommand for backups.

This will fit on top of the client API that Michael is writing.
Is there a reason we want to split out run() from Run() here?

I'm sure we had a few commands that had this structure because of compatibility code paths (run one way for API only code, and have an alternate runDirect sort of code path when we don't have an API server.)

If we do want it split out, then I would probably call it something more significant, like "runBackup".