Use "immediate" instead of "set-immediate-shim"
I was using ExcelJS to parse a XLSX file recently and noticed that it was taking a lot of time because the particular set-immediate-shim being used in JSZip is very inefficient on browsers that don't natively implement setImmediate (which is, with the deprecation of IE, every modern browser). With this change applied, it cuts down the parsing time for Excel files by over 30%!
jszip already depends on lie for promises, which in turn depends on immediate - which is a much better set-immediate polyfill that uses different techniques so it doesn't create long spans of idle time. By swapping out set-immediate-shim for immediate, the bundler is able to use the same package for both and JSZip actually becomes smaller.
This PR only changes a single line- it changes require('set-immediate-shim') into require('immediate').