value and bound arguments
This allows Function objects produced by Function.prototype.bind, as well
as arrow functions to track their |this| values and bound arguments.
Everyone who constructs an Object must now pass a prototype object when
applicable. There's still a fair amount of code that passes something
fetched from the Interpreter, but this brings us closer to being able
to detach prototypes from Interpreter eventually.