Fixed typos
Updated exceptions, added unit tests for them
changed exception constructor arguments
Refactored exceptions
Fixed #26