Introduce UnixFileDescriptor class, which holds a copy of a file
descriptor. Actually it's a wrapper around QDBusUnixFileDescriptor.
Currently arguments to/from a helper are passed as QVariantMap,
encoded as QByteArray. To support passing of file descriptors,
separate them into their own QVariantMap, and pass arguments as
QVariantList consisting of the QByteArray blob of data arguments
and the file descriptors map (HelperProxy::{un}packedArguments()).
Remove operator<<(QDataStream &, const ActionReply &) and
operator>>(QDataStream &, ActionReply &) as they don't make
sense with file descriptors and used only internally in
ActionReply::serialized() and ActionReply::deserialize()
methods. Modify these methods to work with QVariantList
instead of QByteArray blobs.