Bug 893186, part 1 - Fix some code in xpconnect to use JS_HasProperty instead of JS_GetPropertyAttributes. r=bholley.

--HG--
extra : rebase_source : 2a9350bfd887fb6000d4f558f79c1a0dc8483efb
Bug 893186, part 2 - In Interpreter-inl.h, use JSObject::getGenericAttributes instead of JSObject::getPropertyAttributes. r=njn.

--HG--
extra : rebase_source : b91f5e77eebd6c71e9d65a651ddc997297959a52
Bug 893186, part 3 - Add JS_GetOwnPropertyDescriptor. Migrate a test from JS_GetPropertyAttributes to the new thing. r=njn.

--HG--
extra : rebase_source : 0141c90cc8c75b223e09c9125f6daef9f704082e
Bug 893186, part 4 - Replace a use of JS_GetUCPropertyAttributes in JSD with a call to JS_GetOwnPropertyDescriptorById. r=luke.

--HG--
extra : rebase_source : 4b035be0aec9206c3849c45ade6b88718a15031b
Bug 893186, part 5 - Delete JS_GetPropertyAttributes and many similar APIs; remove half a dozen methods from JS::Class. r=Waldo.

--HG--
extra : rebase_source : 1f4a01938b06b66ef855f9b654f098b4819b1390