An ESnext spec-compliant `Set.prototype.isSubsetOf` shim/polyfill/replacement that works as far down as ES3