Using curl_multi_perform in batchDownload, Add getFailedAssets, updateAssets function and improve error handling