Vector2: add projections, add length changer, fixed normalizing