code: function addCallback (t, data) {
    var result = data.result || data.error;
    cbid = data.id;
    if (t.callbacks[cbid]) {
      if (data.result) {
        t.callbacks[cbid](result);
      } else {
        t.callbacks[cbid](result, 'error');
      }
    }
  }
docs: /*
  Having this separate from messageListener allows us to
  avoid using JSON parsing (and its limitations) in the case
  of same domain control