code: function movePropDefsToProto(proto) {
          var stype = proto.entityType || proto.complexType;
          var ctor = proto.constructor;
          if (!ctor){
              throw new Error("No type constructor for EntityType = "+stype.name);
          }
          addResetFn(ctor);
          stype.getProperties().forEach(function(prop) {
              var propName = prop.name;
              if (propName in proto) {
                  wrapPrototypeProperty(proto, prop);
              } else {
                  wrapInstanceProperty(proto, prop);
              }
          });
      }
docs: 'movePropDefsToProto' called during Metadata initialization to properties for interception