Refactored Unit handling, added pseudocode Unit::Move

Switched IUnit interface for a Unit base class, added properties and
Move method to every faction.
Updated ClassDiagram.