[18.x] vm: backport vm-related fixes
This backport includes the patches of Symbols as WeakMap keys from https://bugs.chromium.org/p/v8/issues/detail?id=12947 and the following PRs:
- https://github.com/nodejs/node/pull/49855
- https://github.com/nodejs/node/pull/48943
- https://github.com/nodejs/node/pull/49874
- https://github.com/nodejs/node/pull/49391
- https://github.com/nodejs/node/pull/48510
- https://github.com/nodejs/node/pull/49671
- https://github.com/nodejs/node/pull/49710
- https://github.com/nodejs/node/pull/49950
- https://github.com/nodejs/node/pull/50137