Add support for ChatClient function calling.
- Add generic (model) ToolFunctionCallback
and AbstractToolFunctionCallback
abstractions for defining and registering function callbacks with the ChatClient.
- OpenAiChatClient Function calling implementation.
- Unit/IT tests for OpenAiApi and OpenAiChatClient function calling.
- Add function calling docs.
Comment From: markpollack
removed the default methods in the chat option interface to make tests pass.
Merged as ffd8222c209967552ea32a265837a48e72076b13
Can review the small comments in this PR afterwards