GVariant: fix dbus_message_copy()
dbus_message_copy() did not take into account differences
between locked and unlocked GVariant messages.
This commit adds support for converting from locked to unlocked
GVariant message when a copy is made.
Additionally:
- it fixes initialization of the read iterator for unlocked messages;
- locking or warning on such initialization is no longer needed.
Change-Id: I4d316e1b1ae4e9af194ddc329833147c8c6a8055
(cherry picked from commit
4a9436ec831613139a9291956901813f3baf25d2)