return error on throw method to chain on error properties

Allow to create that type of assertions:
```js
expect(fn).to.throw(BadArgumentError).that.have.property('code', 500);
```
by chaining on the error instance, not on the function that throw an error