Awesome Progress

- Generate file list neatly using TDirectory, from IOUtils
- Generate MD5 for each file
- Shove all this into json with MD5 of launcher at root and the rest in
the files object
- Sync Everything button now working
- Tidied up TDownloadWorker termination