Bug 1036777 - Stop relying on useAllocator for 'in' string classes in ConvertIndependentParam. r=neil
Bug 1036777 - Remove the useAllocator argument to XPCConvert::JSData2Native; r=bholley

It turns out the useAllocator argument is only used for the dipper types
(nsXPTType::{T_ASTRING, T_DOMSTRING, T_UTF8STRING, T_CSTRING}), while we
only pass true in cases where we don't have a dipper type:

* XPCConvert::JSArray2Native errors on those types;
* GetNamedPropertyAsVariantRaw() passes an interface type;
* nsXPCWrappedJSClass::CallMethod passes !param.IsDipper() for the first
  calls and only reaches the last call for dependent types, which do not
  include any of the dipper types;
* CallMethodHelper::ConvertIndependentParam handles dipper types earlier
* and CallMethodHelper::ConvertDependentParam handles dependent types.
Bug 1036777 - Fix string casts to be safe per-XPIDL. r=neil

These types map to nsAString and nsACString respectively.