Bug 925398 - Refactor runtests.py to follow Mixin pattern