Merge pull request #354 from ddobrev/master

Simplified and precised the pass for inlines
Improved GetSourceDirectory to be a little more robust.
Added support for keeping ABI-specific function 'this' return information.
Improved ABI kind handling in the parser.
Improved support for Itanium-like ABIs.
Added support for iOS and iOS 64-bits ABIs.
Fixed the IsItaniumLikeAbi check.
Take advantage of 'this' return information to adjust the return type of structors.
Use a cast instead of an 'as' check.
Small code cleanup. Non-functional change.
Removes the remaining SetClassAsValueType from ParserGen.

Fixes diagnostics not showing up. These cannot be value types else diagnostics won't be copied in CLI copy constructors.
Fixed code generation for structors with HasThisReturn set to true.
Fixed ToolSetToUse to work with the latest Clang expectations.
Fixes classes wrongly being assigned as static classes.

Closes #348.
Removed redundant "new" key-words in generated C# code.

Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>