Fixed bug - needed to divide by length of vector of projection squared in Vector2D.proj