I think there will be a good opportunity to refactor this next iteration as how the downloads are processed will be changing. I'll leave this for now.