[Sema] Restrict derived conformances.
Do not derive conformances to `AdditiveArithmetic` or `VectorNumeric` for
types with any `let` stored properties with an initial value.
Similarly for `Differentiable`, do not derive conformances for types with
any `let` stored properties not marked with `@noDerivative` with an initial value.
This restriction is important for expected behavior regarding memberwise
initializers. Without this restriction, `T.zero` may return an instance of `T`
where default-initialized `let` stored properties have a non-zero value.
This restriction may be lifted later with support for "true" memberwise
initializers that initialize all stored properties, including ones with initial
values.
Add tests, including first runtime derived conformances tests.
Addresses SR-9684 via restriction. May be changed later.