Merge Hackathon branch

Includes:
- AffTransformation2 wrapper and assoicated methods
- ToJSON implementations that support precise serialization
- ParseArg implementations that support precise deserialization
- D2 collinear predicate

(These changes will be further refined/cleaned on master.)