adding copy constructor and assignment operator to ComponentContianer