docs: function freezeRemote(filePaths, remote, callback) {
      var urlObj = url.parse(remote, false, true);
      var basePath = urlObj.pathname + (urlObj.search || "");
      var await = 0;
      for (var itemPath in filePaths) {
          var item = filePaths[itemPath];
          if (item.freezed) {
              continue;
          }
          await++;
          var req = http.request({
                  method: "HEAD",
                  host: urlObj.hostname,
                  port: urlObj.port || 80,
                  path: basePath + item.hashedName
              }, function(res) {
                  if (res.statusCode === 200) {
                      this.freezed = remote + this.hashedName;
                  }
                  await--;
                  if (!await) {
                      await--; // in case we’ve completed syncronously
                      callback();
                  }
              }.bind(item)
          );
          req.end();
      }
      if (await === 0) {
          callback();
      }
  }