Bug 822470 part 1.  Factor out the code that callback functions and callback interfaces will be able to share into a CallbackObject class.  r=peterv

--HG--
rename : dom/bindings/CallbackFunction.cpp => dom/bindings/CallbackObject.cpp
rename : dom/bindings/CallbackFunction.h => dom/bindings/CallbackObject.h
Bug 822470 part 2.  Create a CallbackInterface helper class.  r=peterv

--HG--
rename : dom/bindings/CallbackFunction.h => dom/bindings/CallbackInterface.h
Bug 822470 part 3.  Include headers as needed for callback interfaces.  r=peterv
Bug 822470 part 4.  Expose the concept of "single operation interface" in the WebIDL data model.  r=peterv
Bug 822470 part 5.  Refactor callback codegen so it can be reused for callback interfaces too.  r=peterv
Bug 822470 part 6.  Hook up callback interface codegen.  r=peterv
Bug 822470 part 7.  Use new callback codegen for conversion to and from JS.  r=peterv

NodeFilter, EventListener, and DOMTransaction will be updated to use the new codegen once we've fixed the consumers.