Bug 1036507 - Remove some unused code. r=luke
Bug 1036507 - Remove deceptive GetClassProtoKey API. r=luke

This thing is basically only useful for ye olde JS_InitClass classes where
people might try to create objects with external JSClasses and expect various
defaults when they invoke JS_NewObject. Let's move it out of the way.
Bug 1036507 - Introduce and use StandardProtoKeyOrNull. r=luke
Bug 987669 - Implement JS::ProtoKeyToId. r=luke
Bug 987669 - Implement IsErrorObjectKey and do more at compile-time. r=gabor
Bug 987669 - Implement Xray support for the data properties on ErrorObject instances. r=gabor
Bug 987669 - Add Xray support for FooError.prototype.name. r=gabor
Bug 987669 - Turn on Xrays for Error objects. r=gabor
Bug 987669 - Tests. r=gabor