Schedule download in main queue

You really shouldn't be starting the download manager from a background thread (because asynchronous NSURLConnection obviates the need for that), but in case you do, let's manually schedule the connection in the main run loop. `NSURLConnection` will not run properly if run from a background queue (if that queue doesn't have its own run loop).