XML, Logger, ...: use nullptr instead of NULL
Math/LeastSquares: add method GetMiddleX()
Math/Vector: rebase on Point2D
Geo/FlatPoint: rebase on Point2D
Math/Point2D: add typedef scalar_type
Math/Point2D: add DotProduct(), CrossProduct()

Move code from FlatPoint.?pp.