implemented vector2.h functions