Create a Mock LLM Provider for the purpose of replacing live LLM calls in unit tests run by the CI. Part of this refactoring should separate functional live LLM tests and gate them behind a `llm` flag like the LLMClient unit tests already do.