* Flatten the CsgOpNodes as we build them, rather than in GetChildren
* Don't inline reused nodes in CsgNode::Boolean
* Reinstate difference -> union rewrite
* No need for opportunistic flattening anymore
* Fix typo
* Remove CsgOpNode::Impl::simplified_
* Don't overskip referenced nodes in simplification
* Avoid needless copy of shared pointers
* Disambiguate CsgOpNode::Impl::flatten_ -> forcedToLeafNodes_ and align GetChildren arg naming
* Simplified CsgOpNode::GetChildren
* Simpler (a-(b+c)) -> (a-b-c) transform in CsgOpNode::Boolean to work better w/ CsgOpNode::ToLeafNode
* Simpler build hints for large_scene_test.cpp
* [flatten] Refine rules about tree flattening + added test case
* [manifold] Propagate transforms when flattening op trees
* [flatten] move tests from manifold_test to boolean_test