Rewrite clone handling to manually-define them for types, though almost unused