Workaround for COFF compiling issue due to conflicting preprocessor defines.
Implemented type printing for "va_list" type map.
Added an hack for parsing declaration without unique native pointers.

We only need this because we're re-using the parameter declaration for function type parameters.
Stubbed out some type printing overloads.
Skip generating some unique methods (ctors and dtors) for base classes when handling value types.
Try an alternative path separator when cleaning up file paths.
Code cleanups, no functional changes intended.
Fixed parser to work with latest LLVM and Clang revisions.