chore: Extract `turborepo-shim` crate from `turborepo-lib` (#11320)
## Summary
- Extract the `shim/` module from `turborepo-lib` into a standalone
`turborepo-shim` crate
- Use trait-based dependency injection to decouple shim logic from
turborepo-lib internals
- Maintain full backward compatibility via re-exports in
`turborepo-lib/src/shim.rs`
## Details
This PR continues the modularization effort by extracting the shim
module, which handles:
- CLI argument parsing (`ShimArgs`)
- Local turbo binary detection (`LocalTurboState`)
- Turbo version detection from lockfiles (`LocalTurboConfig`)
- Platform-specific turbo state helpers