code: function(type, o) {
        if (!type || _.indexOf(['prop', 'list', 'meta'], type) < 0) return '';
        if (_.isEmpty(o)) return '';
        var qs = '&' + type + '=' + _.keysIn(o).join('|');
        return _.reduce(o, function(res, v, k) {
          var func = this[k];
          if (func) res += func(v);
          return res;
        }, qs, this);
      }
docs: /*
  Generate query string for prop, list and meta
  
  *type* is the type of the query. The only 3 valid values are prop,
  list and meta.
  *o* is a dict where key is a valid module and value is
  parameters for such module.