Bug 1103368, part 1 - Forbid stub getter/setter arguments to NativeObject::{add,change,put}Property. r=bhackett.

--HG--
extra : rebase_source : b3ab127f31c2ac83907f493e916b95ce19d1e7fc
Bug 1103368, part 2 - Ban stub getter/setter arguments to js::baseops::Define{Property,Generic,Element}, DefineNativeProperty, and DefinePropertyOrElement. r=bhackett.

--HG--
extra : rebase_source : 1b8524aebf85aa27fa9542b8001cae489888e887
Bug 1103368, part 3 - Ban stub getter/setter arguments to JSObject::define{Generic,Property,Element} and js::SetPropertyIgnoringNamedGetter. r=bhackett.

--HG--
extra : rebase_source : c22527613154df11344f2e66060d7e6dae61b6de
Bug 1103368, part 4 - Ban stub getter/setter arguments to js::CheckDefineProperty. r=bhackett.

--HG--
extra : rebase_source : 407e9adaca3ee23e768f750cd84a0a8f3432e2fa
Bug 1103368, part 5 - Make Class::getProperty and setProperty nullable instead of needing stub functions. Never store stub functions in JSPropertyDescriptors. r=bhackett.

--HG--
extra : rebase_source : a44070dd6155426ef6026c1575116f90b5fdac0c
extra : amend_source : 8d8fcf05dfd5fdf214a39501663347a6d6b56463