Kill exception shadowing

* The code used to rescue any exception. Even exceptions operators /
  developers want to stop the world.
* When we want to allow a certain set of exceptions to be shadowed we
  should use shipment rate calculation specific exception lists that still
  allow shipment-unrelated exceptions to stop the world.
* When the downstream libraries do not provide matchable exceptions
  these should be fixed instead of adding a debugging burden to everyone
  having to work with shipment rate calculation.