@joshmh a good alternative to handling errors from providers as you proposed in `jsonquest` would be to do something like [this](https://github.com/vigour-io/bender-api/blob/master/lib/bender-api.js#L47-L59), where the `_request` function handles the standard format returned by the provider (like `error` property from Blockchain) and then specific functions handle those wrapped `Error` instances if they need to do anything with them.