Type checks and string switches run at speed
This release speeds up how code makes DECISIONS. A huge amount of real JavaScript branches on a string or a type: `if (kind === 'primary')`, `if (typeof callback === 'function')`, a switch over string cases. Until now, the moment a hot loop compared a string or asked a value's type, the engine gave up speeding it up and ran the whole loop the slow way. Now both run fast: comparing a string to a constant, and checking a value's type with `typeof`, are compiled, so a tight dispatch loop runs up to about 1.8 times faster. The care here is all in getting equality exactly right, because string comparison in JavaScript is full of traps: '5' and '05' are different strings even though they look like the same number, and a string is never strictly equal to a number. The fast path compares strings by their actual text and never by number, and anything that would need real coercion quietly falls back to the careful path - so it is faster with zero change in behaviour, proven equal to the plain interpreter by a differential fuzzer that now throws every mix of string and type comparison at both paths. The engine gate holds at 6375 of 6375.