code: function define(scope, Type, name) {
    var propName        = name || 'super'
      , propInernalName = '_' + propName;
  
    Object.defineProperty(scope, propName, {
      writeable: false,
      get: function() {
        if(!this[propInernalName]) {
          this[propInernalName] = create(this, Type);
        }
        return this[propInernalName];
      }
    });
  }
docs: Attaches a `super` property to an object
  that contains the methods on the supplied
  Type bound to the current instance.
  
  @api public
  @param {Object} scope - the instance to
  bind methos to
  @param {Function} Type - the prototype
  of the super Type
  @param {String} [name] - the name of the
  property, defaults to 'super'