Runtests refactoring: part II

Сократил число экземпляров класса, убрал методы, изменяющие его состояние, переписал часть функций для большей читаемости. 
Потому что физический смысл этого непонятен.