Refactored test suite, changed generic &errors to more specific exceptions.