Fix a bug where files in nested parameter hashes wouldn't be converted to instances of UploadIO

This PR fixes a bug where files in nested hashes wouldn't be uploaded, and instead you'd get something like this in the HTTP body:

```
-------------RubyMultipartPost
Content-Disposition: form-data; name="upload_file[data][file]=#<File:0x007f95d1a7e798>"
```

My use case:

```ruby
MyAPI.create({
  subject: 'Passport Image',
  upload_file: {
    data: {
      file: File.open('/Users/daniel/Desktop/bart-simpson.jpg'),
      file_name: 'bart.jpg'
    }
  }
})
```

Have at it! :sparkling_heart: