Bug 992958 - Rejigger the ordering of resolveConstructor to make it work for Object/Function. v1
Bug 992958 - Invoke set{Constructor,Prototype} as soon as possible, and remove setDetails helpers. v1

When we decouple function and object, we'll need to rely on these slots being
set up as soon as the relevant objects are created.
Bug 992958 - Hoist Object and Function prototype creation into ClassObjectCreationOps. v1

We try to keep the diff small for now, and reformat later.