Start on a check() method

Broken in a lot of ways - see comment in code.