Dl tracking

This got a bit bigger than I expected, and there is still more I want to do.

Main changes: 
- made `DownloadTrackingService` dumber/simpler
- updated `CompletedDownloadServiceFixture` to test the subject directly rather than through `DownloadTrackingService`
- renamed `DownloadClientId` to `GrabId`
- renamed `TrackedDownloadState` to `TrackedDownloadStage`
- added `History.GrabId`, I'm thinking we should make it an actual column, so dealing with it gets a bit easier, also we would be able to query based on it rather than loading the whole history in memory.

@markus101 @Taloth 

I'm ok with reverting this change and letting the migration do the job, I was under the impression that we had CDH disabled for new users (which is not the case)

"CDH will attempt to import old existing history items. (which is why we instruct migrating users to use a different category.)"

can you give me some more details on this, I'm curious if there is something we could do to prevent some of these issues.