Added Composite pattern
Iterator