docs: function coerceAll(obj) {
      var type = Array.isArray(obj) ? 'array' : typeof obj;
  
      switch(type) {
          case 'string':
              return coerce(obj);
              break;
          case 'object':
              if(obj) {
                  Object.keys(obj).forEach(function (key) {
                      obj[key] = coerceAll(obj[key]);
                  });
              }
              break;
          case 'array':
              obj.map(function (o) {
                  return coerceAll(o);
              });
              break;
      }
  
      return obj;
  }