Attempting shared hierarchy for primitives, ellipse/rectangle