Reorganize wrappers, adding `SetCache` as a hybrid cache combining ES6 Set and object lookups,