Added a new pass to check for duplicated vtable components.

This helps workaround some Clang's work-in-progress vftable layouting implementation.
Added class documentation to the ParserGen class.
Added OrderedSet utility class.
Merge remote-tracking branch 'upstream/master'