Fixes leak caused by mutual dependency when JS::Handle<JobCallback> is owned by GC-allocated PromiseReaction.
(Instead of MarkedVector<Value>.) This is a step towards not storing argument lists in MarkedVector<Value> at all. Note that they still end up in MarkedVectors since that's what ExecutionContext has.
This allows JobCallback.h to not include Runtime/AbstractOperations.h and FunctionObject.h.