Added tests to make sure the classes were final and that they implemented the right interfaces.