Lots of copy constructor fixing.