Added bits to more fully implement the Composite pattern.