Bug 987007, part 1 - Make CGProxyIndexed{Getter,Setter,PresenceChecker,Deleter} return finished C++ code with the type already in it (rather than a template to be filled in later). r=bz.

--HG--
extra : rebase_source : 019165a1081d442b9805eb11d9be2e37f860841a
Bug 987007, part 2 - Handle assignment to named and indexed setters without using JSRESOLVE_ASSIGNING. r=bz, r=bholley.

--HG--
extra : rebase_source : a26eb85a086a18219a4d423cd7ad49a92cfd2584
Bug 987007, part 2a - Instead of generating identical DOMProxyHandler::set() methods for many interfaces, implement it in a common base class. r=bz.

--HG--
extra : rebase_source : 15e81591de2a7c07b34a23143b876feadc2d7a1e
Bug 987007, part 3 - Remove the last use of JSRESOLVE_ASSIGNING from nsWindowSH. r=bz.

--HG--
extra : rebase_source : bd88ffd14c8a1d30eb09e462f6fd6f890087429c