context.throw supports Error instances

This modifies `ctx.throw` so it supports `Error` instances.

before:

```js
if (err) {
  err.status = 422;
  err.expose = true;
  throw err;
}
```

after:

```js
if (err) this.throw(err, 422);
```