Improve exceptions names and handling.
Merge remote-tracking branch 'drebs/feature/improve-exceptions-names-and-handling' into develop