Split Vector2D.getNormal into perpendicular & getNormal

fixes #745