Added stuff to test and exceptions to implement.