Merge Hackathon branch

Includes:
- AffTransformation2 wrapper and assoicated methods
- ToJSON implementations that support precise serialization
- ParseArg implementations that support precise deserialization
- coordinate accessor for Polygon2
- d2 collinear predicate
- Point2::IsEqual predicate

(These changes will be further refined/cleaned on master.)