Support GMount-backed sources and make SetCollectionJob more generic
While the work on importing content from removable devices (ie. #29 (closed)) is still ongoing, here are some basic things that are necessary for it to work. One of them is a Source that's backed by a GMount, similar to GoaObject-backed Sources representing online accounts. The other is to make SetCollectionJob generic enough so that it's not completely tied to the SelectionController. When adding content that's getting imported from a device to a collection, we would need to pass a list of URNs that might not be part of the SelectionController.