ErrorTypes Used throughout the libary to assert the types of errors found

ErrorTypes Used throughout the libary to assert the types of errors found