Would it be possible to store download progress and resume it later? Kind of like how the repair function works. I think that might fix any hangup issues without canceling a download and retrying it a million times. Other than that, you have a nice app going here :)