The attr_readonly makes activity copying fail.
DRYing up the object creation methods in sg_marshal.