Throw an error if someone passes a `headers` option to the constructor
request (and get, post, etc) accepts an option called headers. Its return hashref also includes a key called headers.
But the constructor accepts an option called default_headers. I accidentally used headers and was confused for at least an hour about why the API that I was calling kept returning 403 Forbidden. (Didn't help that it was behind Cloudflare, so I thought they were the ones blocking me.)
It would be nice if HTTP::Tiny->new( headers => \%h ) threw an error or at least a warning. Either the constructor could complain about all unrecognized options, or just headers. Either way.
If we add a warning, it probably makes sense to warn about any unknown attribute.
If we're doing a wish list for being warned when you put it in the wrong place, I'd like warnings for unknown keys in \%options in $http->request($method, $url, \%options);, just to save a hypothetical developer 90 minutes trying to figure out why their If-Modified-Since header doesn't seem to be going anywhere...