re-stubbed out as a class. TODO: add tests (yes, i'm bad...)