Add `SILFunctionType::getAutoDiffDerivativeFunctionType`.
It computes the derivative `SILFunctionType` for an "original"
`SILFunctionType`, given:
- Differentiability parameter indices
- Differentiability result index
- Derivative function kind
- Derivative function generic signature (optional)
- Other auxiliary parameters
Add doc comments explaining typing rules, preconditions, and other details.
Partially resolves TF-1124.
Unblocks upstreaming other SIL differentiable programming infrastructure.