feat(shim): invoke local turbo version via npx if not installed (#8385)
### Description
I highly recommend reviewing the first 4 commits on their own as they
are primarily breaking up the massive `shim` module.
This PR adds fallback option when global turbo doesn't find a local
turbo install. If a local install isn't found we will look at:
- lockfiles
- package.json
- turbo.json to identify if turbo 1 is expected
If one of those result in finding a version of `turbo`, then we'll
invoke `turbo` via `npx` to download the correct version on the fly.
This behavior can be disabled with by setting
`TURBO_DOWNLOAD_LOCAL_DISABLED` to `1` or `true`
### Testing Instructions
Added unit tests for detection behavior.
Manual testing of repos with/without a local install of `turbo`.