Use a new type of weak phantom handle for ScriptWrappable.

The new phantom handle does not require a callback and is reset
automatically by the garbage collector.

Since we do not have finalization callback anymore, we account for the
freed wrappers in GC epilogue by using a new V8 API function.

This drastically reduces time spent in callback handling
phases of V8 GC on v8.infinite_scroll benchmark.

See the related CL in V8 for more motivation and results:
https://codereview.chromium.org/1950963002

BUG=608333

Review-Url: https://codereview.chromium.org/1944363002
Cr-Commit-Position: refs/heads/master@{#392613}
2 files changed