refactored TowerControl class