To make adding new providers clean, I built a `Provider` interface.
Adding Gemini or Mistral is now:
1. Implement the interface
2. `chain.Register(newProvider)` in main.go
Scheduler, handler, caching, key rotation — all work automatically.
Gemini is next.