[TF] TF-496: Conditionally conform SIMD types to Differentiable (#24786)
- Add protocol and struct gyb file conformances to make SIMD Differentiable
- Add tests
TODO:
- Figure out how to add back the default protocol implementation of `-=`/`+=` due to `AdditiveArithmetic` default implementation
- Had to remove `@_alwaysEmitIntoClient` from `sum()` due to bug (filed as TF-545)
- Remove some of the redundant custom VJPs which are blocked by a bug (filed as TF-547)