Exception handlers should provide some context

and preserve the original exception
String literals should not be duplicated
Simplify methods