Add min/max functions to Interval and update Vector2d::componentwise_min to find them
Add typedefs for Vector<int, n> as Vec1/2/3/4i
Add integer addition and subtraction operators for IdIter
Fix queue to use array.size() instead of array.m
Add index operator[],front, and back to Range
Add NestedField and some convenience functions for existing Fields
Refactor circle csg to expose predicates seperately and add circular arc offsetting

* TODO: Current offset implementations creates many degenerate arcs and should be improved Simulation of simplicity handles the resulting geometry, but is quite slow.
* OTHER_CONST changed to OTHER_PURE to avoid gcc compiler error where release builds were passing arguments in the wrong order
* Add a few small unit tests.
Merge in changes from origin