* Gemini: Allow arbitrary attachments
This lets me use Gemini to extract information from PDFs, HTML, or other files.
* Gemini: Only add deprecation warning when deprecated parameter has a value
* Gemini: Use Files.upload() for both images and other files
This simplifies the code.
Within the Google client, this takes a different codepath (it uploads images as a file instead of re-saving them into inline bytes). I think that's a feature (it's probably more efficient?).
* Gemini: Deduplicate filenames