Improve exceptions
Merge branch 'master' of https://github.com/ophirdj/Software-Design.git