#4337 File Uploads in Requests

Adds new `Request::files()` method, along with support for uploading files via the HTTP, Stream, and Curl clients.