Code revamps and new interfaces based on a large patch
from Yavor Goulishev <yavor@google.com> for use in an
OS X MTP file transfer program for Android.

Refactor:
- Break out obj2file and reuse in all functions that want
  to fill in a LIBMTP_file_t from a PTP object.

Introduce new interfaces:
- LIBMTP_Open_Raw_Device_Uncached() to open an uncached
  device from a raw device.
- LIBMTP_Get_Files_And_Folders() that will only work on
  uncached devices.

Signed-off-by: Yavor Goulishev <yavor@google.com>
Signed-off-by: Linus Walleij <triad@df.lth.se>
2 files changed