Added copy constructor and assignment operator