add support for `next(status[, msg])`

When next is called with the first argument as a number, it will be
automatically converted to an Error object with the appropriate status
code.

The motivation behind this change is to make it easier for middleware to
indicate an error has occurred without needing to resort to custom error
classes.

Removes utils.error as it should no longer be used.