Added location information to THROW instruction.
Completed restructuring of execeptions in RascalPrimitives

All exceptions generated by RascalPrimitives now call methods in
RascalRuntimeException and carry location information.
Parsing functions now also generate RascalRuntimeExceptions
RascalPrimitives now only throw CompilerError or RascalRuntimeException
Added TODOs to all potentially undesirable imports referred to in issue
#558