Restructuring. Implemented union, intersect. Decided that defaults for constructors and assignment were sufficient.