Added backend services for downloads
Changed modifiers
Optimized code
Added benchmark utility
Renamed repository
Updated database methods
Added clarification to debug message
Changed reference name for repositories
Added repository for UserDownload