Add copy constructors.
Add equals and hashcode methods.