Added the idea of a component
Modified containers to have more proper iterators