Add basic downloader logic with Socket.IO