v8: upgrade 3.21.18.3
src: update after v8 api changes
build: fix test-gc weakref build rule

Make the build rule depend on the build artifact (weakref.node) itself
rather than the directory it's built in.  Depending on the directory
means that a build failure won't trigger a rebuild on the next
invocation because the directory's timestamp has been updated.
test: fix up weakref.cc after v8 api change