The only thing that makes the S3 REST interface "special" is it's proprietary but documented auth protocol.
LibCURL knows a bunch of different auth protocols.
If the S3 auth protocol is added to to libCURL, then any existing libCURL based app can immediately read/write to S3 without further change.
The folks at Amazon AWS ought to do this. Maybe they will pay me to do it...