Objects refactored to facilitate and properly use abstract classes mover and unit.