Update Promise implementation to match V8 ToT