wasm backend: implement `multi_value` for `WValue`

This allows us to differentiate between regular locals and variables that create multiple locals
on the stack such as optionals and structs.
Now `struct_a = struct_b;` works and only updates a reference, rather than update all local's values.

Also created more test cases to test against this.
87a9c6946dLuuk de Gram committed on 5/20/2021, 7:25:02 AMparent6962647
2 files changedLine totals unavailable