Bug 1113730 - fix TypeError in the visualstudio backend; r=gps,f=philip.chee
Bug 1114596 - don't define GENERATED_INCLUDES in ipc/ipdl/moz.build; r=gps

The common include file /ipc/chromium/chromium-config.mozbuild already
defines this variable for us, and there's no point in telling the
compiler to look twice in the same directory for includes.
Bug 1114598 - move common IPDL file handling from recursivemake.py to common.py; r=gps

The recursivemake backend knows how to do several things with the IPDL
sources:

1) Determine the C++ sources that will be generated from given IPDL
   sources.
2) Write out all the makefile rules and variables for said sources.

The first part isn't unique to the recursivemake backend; other backends
would eventually like to know what C++ sources come from IPDL source
files for easier cross-referencing purposes, etc.  Let's take a first
cut at moving things into CommonBackend.  (This may not be the best
interface, since it relies on consume_finished being invoked, and not
all backends call CommonBackend.consume_finished.  Still, it's a start.)