Add new overload for findFunctionProto and matchFunctionProto which rather than taking the list of argument types as a StringRef, take it as a const llvm::SmallVector<clang::QualType, 4>. This avoids the (permanent) allocations inside clang due to the Parsing of types.