Could you document the interplay of `deferred` and `seen`? Are both calls to addMembers supposed to share the same `seen` set?