Version 0.26.1 of axios created errors by calling `new Error()`, and then augmenting it.  Doing it this way, the error object contained a `stack` property with the stack trace.

With version 0.27, axios creates errors as an Object, and doesn't add the `stack` property to them, so there's no stack trace available.

Expected behavior is that there will be a `stack` property with a stack trace.

The issue is that the constructor for `AxiosError` does `Error.call(this);`, but that doesn't add a stack trace property.  Adding the stack trace needs to be done after that using code like:

```
    // Use V8's native method if available, otherwise fallback
    if ("captureStackTrace" in Error)
        Error.captureStackTrace(this, InvalidArgumentException);
    else
        this.stack = (new Error()).stack;
```

See my stack overflow article https://stackoverflow.com/questions/464359/custom-exception-type/27724419#27724419 for more info.

I can submit a PR if you guys agree on the technique.

Thanks!
lib/core/AxiosError.js
Error.captureStackTrace(this);
  }
  this.message = message;
  this.name = 'AxiosError';
  code && (this.code = code);
  config && (this.config = config);
  request && (this.request = request);
  response && (this.response = response);
}
utils.inherits(AxiosError, Error, {
  toJSON: function toJSON() {
    return {
      
      message: this.message,
      name: this.name,
      
      description: this.description,
      number: this.number,
      
      fileName: this.fileName,
      lineNumber: this.lineNumber,
      columnNumber: this.columnNumber,
      stack: this.stack,
      
      config: this.config,
      code: this.code,
      status: this.response && this.response.status ? this.response.status : null
    };
  }
});