docs: function parseGameSettings(settingsObj) {
      var standard, t, out;
      var treatments;
      if ('object' !== typeof settingsObj) {
          throw new TypeError('parseGameSettings: settingsObj must be object. ' +
                              'Found: ' + settingsObj);
      }
  
      out = {};
      standard = J.clone(settingsObj);
      if (!settingsObj.treatments) {
          out.standard = standard;
          out.standard.treatmentName = 'standard';
          out.standard.name = 'standard';
      }
      else {
          treatments = settingsObj.treatments;
          delete standard.treatments;
          for (t in treatments) {
              if (treatments.hasOwnProperty(t)) {
                  out[t] = J.merge(standard, treatments[t]);
                  out[t].treatmentName = t;
                  out[t].name = t;
                  if ('string' !== typeof treatments[t].description ||
                      treatments[t].description.trim() === '') {
                      // TODO: change warning into error in v5.
                      console.log('***Deprecation warning v4.3.0+: ' +
                                  'all treatments must have a description. ' +
                                  'Treatment: ' + t + '***');
                  }
              }
          }
      }
  
      return out;
  }