refactors MassObject, allows it to use custom setter methods in initialize