This PR makes it so tool uses are restored when loading saved threads in Assistant 2. Release Notes: - N/A
This PR factors out the concerns related to tool use out of `Thread` and into their own module. Release Notes: - N/A