This one accepts SAFEARRAY arguments (translated from pp vectors), as well as returning SAFEARRAYs, ref counting, etc.
Reason for the provisional: I started assuming that any returned VARIANT is property of my plugin, therefore my responsibility to do VariantClear on it, i.e. to release associated data structures. This should matter particularly for large SAFEARRAYs retuerned by methods, e.g. GetRows in Sheri's AODB script (included in zip). But moment I execute VariantClear on a returned VARIANT, crash. Atl least if VARIANT is a SAFEARRAY or BSTR. So I don't (call VariantClear). In pricniple that should make a humungous memory leak, but ASAI can see, using verarious memory inspectors, no leak. You get same result? If so, I'll just shrug and publish.
