Implemented general class for Vec2, Vec3, Vec4