Simplify some of the syntax used with VcRead<T> (#8812)
### Description
IMO, many of these types are hard to read:
- Use a `VcReadTarget` type alias in `read_ref` to reduce the amount of syntax needed.
- Replace a few uses of `<<T as VcValueType>::Read as VcRead<T>>` with `<T::Read as VcRead<T>>` in places where `T` is already unambiguously `VcValueType`.
- Remove an unnecessary turbofish for an inferred type.
### Testing Instructions
```
cargo check
cargo nextest r -p turbo-tasks -p turbo-tasks-memory
```