Full review (do not merge)

In the ideal world, you should have your own exception class wrapper but unfortunately this is on par with the rest of our smart proxy :-)