WebAssembly now rejects broken modules, as a browser must
A real browser type-checks every WebAssembly module before running it and refuses the broken ones: a module that adds a whole number to a decimal, jumps to a code label that does not exist, or names a function or variable that was never declared is a compile error, not something you run and hope for the best. Floati's engine had been skipping that check - it would decode almost anything and execute it, which is both a correctness problem (a wrong answer instead of a clear error) and a safety one (untrusted code should be validated, not trusted). This release adds the full validation pass and now rejects every one of the specification suite's 727 hand-crafted invalid and malformed modules, while still running all 13,188 of the valid ones exactly as before. WebAssembly in Floati is now complete end to end for its core and reference-types feature set - it decodes, validates, and executes to the letter of the spec - which brings the scorecard to 63.