add arbitrary data to error hashes

* remove extraneous code from `ErrorHelpers` and `Response`
* `#param_error` and `#header_error` now take a block that
  yields the error hash for easy mucking with