chore(Turborepo): Move more CLI stuff out of run code (#7085)
### Description
- setup `api_auth` and `api_client` outside of a run
- remove the lifetime from `Opts` and related structs
- keep a copy of `Opts` on `Run`. This is likely not the final
structure, but is an intermediate step.
- keep a copy of `api_auth` on `Run`
- Move most of the calculations on `Opts` into the constructor for
`Run`. This should likely eventually be a `TryFrom<CommandBase>` instead
of `new`. The goal is to be able to make `Run` itself immutable since
all of the config and options will have been resolved ahead of time
### Testing Instructions
Existing test suite
Closes TURBO-2135
---------
Co-authored-by: Greg Soltis <Greg Soltis>