Added a SetOperationFunctor abstract base class, an IntersectionFunctor derived class and a UnionFunctor derived class. All of these classes are binary functors that take two boolean variables and return a single boolean ( Intersection -> b1 && b2, Union -> b1 || b2 ). These functors are used by the BooleanCellFunctor class. This class is constructed from the cell definition string. The () operator takes a list of boolean variables and returns a single boolean. This functor will be used to determine if a point is in a cell based on its location relative to each surface that bounds the cell.