added domain specific exceptions and fixed tests

@alecsammon Here it goes, my PR that adds domain specific exceptions. I did not implement any tests for the exception classes, they are so damn basic. Let me know what you think.

While implementing I came across a syntax error on Parser.php, Inflect::$transformer($values[$matches[1]]), or at least I do not think we need braces around the $transformer variable, so removed them.
As above WRT to `json_last_error_msg()`