code: function traverse (keys, schema, source, target, operation, options) {
    if (source) {
      keys.forEach(function (key) {
        var descriptor = schema[key]
        if (!descriptor) { throw new Error(key + ' is not recognized') }
        operation(key, descriptor, source, target, options)
      })
    }
  }
docs: Traverse