code: function ensureNoSocketOrToken(data) {
          var cleanData,
              key;
  
          if (data.hasOwnProperty('socket') || data.hasOwnProperty('webgmeToken')) {
              cleanData = {};
              for (key in data) {
                  if (key !== 'socket' && key !== 'webgmeToken') {
                      cleanData[key] = data[key];
                  }
              }
          } else {
              cleanData = data;
          }
  
          return cleanData;
      }
docs: Since the web-socket portion temporarily appends a socket to the eventData
  (to know if it should broadcast or not) we need to ensure that we don't send that data here.
  Neither do we want to send webgmeToken if attached to the event data.
  
  @param {object} data - event data from storage.
  @returns {object} data if it does not have socket nor webgmeToken, otherwise a shallow copy without the socket.