               set: (val)->
                 @[__v] = val
                 @_entity[to] = val
+              enumerable:true
             }
       else
         config = (__v, v) ->

      component.prototype[name] = extension

  component.prototype._entity = null
  component.prototype._sync = null
  component.prototype._listensTo = null
  component.prototype._observes = null
  
  component.sync = addSyncs
  component.listensTo = addListensTo

            set: (val)->
              @[__v] = val
              @_entity[v] = val
            enumerable:true
          }
      Object.defineProperty(prototype, v, config('__' + v, v, to))
  return @
