Add AWS.Request.abort() to abort requests

Sample usage:

```js
var s3 = new AWS.S3();
var params = {
  Bucket: 'bucket', Key: 'key',
  Body: new Buffer(1024 * 1024 * 5) // 5MB payload
};
var request = s3.putObject(params);
request.send(function (err, data) {
  if (err) console.log("Error:", err.code, err.message);
  else console.log(data);
});

// abort request in 1 second
setTimeout(request.abort.bind(request), 1000);

// prints "Error: RequestAbortedError Request aborted by user"
```

Closes #133