Implement JS built-in String, Number, Boolean, and Symbol master
## String - Constructor: String(), String.fromCharCode(), String.fromCodePoint() - Prototype: charAt, charCodeAt, codePointAt, concat, slice, substring, substr, indexOf, lastIndexOf, includes, startsWith, endsWith, trim, trimStart, trimEnd, padStart, padEnd, repeat, split, replace, replaceAll, toLowerCase, toUpperCase, at, toString, valueOf ## Number - Constructor: Number() - Static: isNaN, isFinite, isInteger, isSafeInteger, parseInt, parseFloat - Constants: EPSILON, MAX_SAFE_INTEGER, MIN_SAFE_INTEGER, MAX_VALUE, MIN_VALUE, NaN, POSITIVE_INFINITY, NEGATIVE_INFINITY - Prototype: toString(radix), valueOf, toFixed, toPrecision, toExponential ## Boolean - Constructor: Boolean() with truthiness coercion - Prototype: toString, valueOf ## Symbol - Factory: Symbol(description) producing unique string-based identifiers - Well-known: Symbol.iterator, toPrimitive, toStringTag, hasInstance - Registry: Symbol.for(key), Symbol.keyFor(sym) ## VM Changes - Added string_prototype, number_prototype, boolean_prototype to Vm - Primitive auto-boxing: GetProperty/GetPropertyByName now look up prototype methods for String, Number, and Boolean values - Global constants: NaN, Infinity, undefined 37 new tests (328 total JS tests, all passing) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>