Throw Exception On Invalid Argument

On an invalid argument an exception should be thrown. This means if we passed something stupid into the library, like something other than undergraduate or postgraduate.