Replace cloning as backup method with custom copy and equals methods