feat(turborepo): refactor scm and thread into scope calculation (#5405)
### Description
- move scm-related functions into a `Git` struct
- rename `Hasher` to `SCM`
- use turbopath more throughout
- create an `SCM` instance in run outline and pass it to scope
### Testing Instructions
Existing test suite
---------
Co-authored-by: Greg Soltis <Greg Soltis>