pass exception up
improved exceptions to be more informative