Kinda got a model/view/test thing.
Use self instead. Other tidying, too.