- Add ToolCall to AssistantMessage.
- Rename FunctionMessage to ToolResponseMessage and add id and name fields.
- Refactor OpenAiChatModel's function calling handling.
- Prompt copy now copies the AssistantMessage and ToolResponseMessage contents.
Other ChatModel implementations to adopt these changes in subsequent commits