code: function() {
          for (var i=this.provides.length-1; i>=0; --i) {
              delete this.target.extensions[this.provides[i]];
          }        
          this.map.events.un({
              mousemove: this.onMousemove,
              mousedown: this.start,
              mouseup: this.onClick,
              touchstart: this.start,
              touchmove: this.cancel,
              touchend: this.onClick,
              scope: this
          });
          delete this.cache;
          delete this.map;
          delete this.target;
      }
docs: APIMethod: destroy
  Clean up.