Adds download tracking using NSFileCoordinator

This sequentially waits for all the started downloads to complete.  There's no guarantee that when all the downloads are done all the files really are still "downloaded" (maybe they get deleted, etc) but since this is just a hint to the app that now is a good time to sync, seeing that all the started downloads have completed should suffice.

The problem this fixes is that neither of the delegate methods are firing when downloads complete.