Unit.h: Changed the class design as there was something wrong about my ideas the last time. We anyway need to define specific classes for every Unit type we want to specialice, so it makes more sense to just use inheritence.