Basic Error Handling

Added Scanner and Parsing Exceptions as well as keeping track of the
source position.