checkers: new Checker interface, add tests

This makes the checkers package actually useful.

Thanks, that makes things much clearer.