In order to be nicer to the device, make a (singleton) download service helper class

-Do not keep download service running all the time. Only run it when needed. DownloadHelper keeps track of files notified so service can be safely stopped
-Never run the download service if multiple downloads is disabled
-Unbind from download service as soon as a download job completes