Added validtion that @ClassRule should only be implementation of TestRule

Fixes #1019 
 - Added validation that `@ClassRule` must be an implementation of `TestRule`
 - Did some cleaning up by removing warnings due to missing `@Override` annotation at some places
@kcooney Oh sorry for that. Have reverted that and squashed the changes.