Add support for multipart form data via the request options

(See original proposal here #924)

#### Summary
Instead of creating your own form for multipart uploads and having to append data separately, pass the data you'd like to attach via the request options argument.

#### Before
```javascript
// From README#Forms
var options = { /* ... */ };
var r = request.post(options, someOptionalCallback);
var form = r.form()
form.append('my_field', 'my_value')
form.append('my_buffer', new Buffer([1, 2, 3]))
// ...
```

#### After
```javascript
var options = {
    url: 'http://service.com/upload',
    formMPU: {
        my_filed: 'my_value',
        my_buffer: new Buffer([1,2,3])
    }
};
request(options, someOptionalCallback);
```