Changed distance method to a template.

It did work, just needed to handle varying types within the func.
So we cast the 'v' variable as a sf::Vector2f
Added multiple units.

Bug: only one unit actually moves at a time.
So just check all units in lines 123-129 and move if their target
is different from current position.
All units now move if not at their target position

Also fixed a bug where some units had zero speed