code: function(name,shim){
      var constructor = window[name];
      if (!constructor)
          constructor = window[name] = shim.interface;
      delete shim.interface;
      var proto = constructor && constructor.prototype;
      if (shim.prototype) {
          proto = constructor.prototype = shim.prototype;
          delete shim.prototype;
      }
      
      window.console&&console.log("adding interface ", name);
      
      if (shim.hasOwnProperty("constructor")) {
          window[name] = constructor = shim.constructor;
          proto && (shim.constructor.prototype = proto);
          delete shim.constructor;
      }
  }
docs: /* DOM-shim : https://github.com/Raynos/DOM-shim/tree/master/src/all/interfaces