Improved handling of background tasks (download and deletion of huge DocSets)

Hi Ole,

I have improved the application's background tasks a little:

Download of huge DocSets:
When a download is running for a long time its background task will time out after 10 minutes when the device locks down or when the uses pushes the app into the background.

Solution:
To prevent "losing" a download, the download or the extraction of the DocSet itself will be paused and can be resumed by the user later on. I think this solution goes well with the general "flow" of the device falling asleep and shutting down all running processes until the user continues using it.

Deletion of huge DocSets:
Deleting huge DocSets can consume more than 10 sec and then watchd0g kills it. When restarting the app, it finds a corrupted DocSet and crashes.

Solution:
On the main thread DocSets are moved to a temp directory (which happens very fast) so the app can update its UI state right away. Then a background task is scheduled which deletes it safely in the background.

If you like give it a try and merge it into your code base.