[AutoDiff] Add binary version of `differentiableFunction`. (#21954)
Add a new version of `differentiableFunction` that supports binary functions.
Add runtime tests.
Note: type-checker errors regarding closures (like the arguments to
`differentiableFunction`) are inscrutable and often don't highlight
actual errors in source code. This is a significant hurdle for usability.