Refactored Point2D

Comments and applied fluent returns for Point2D operations so that it is
easier to use.
Updated Vector2D

Updated and commented Vector2D.