     $c = cheerio.load(body)
     window.champGGVer = $c(csspaths.version).text()
     updateProgressBar(1.5)
-    cb()
+    cb null
 
 
 ###*
  * Function Downloads all available champs from Riot.
  * @callback {Function} Callback.
 ###
-getChamps = (cb) ->
+getChamps = (cb, r) ->
   cl 'Downloading Champs from Riot'
-  hlp.ajaxRequest 'http://ddragon.leagueoflegends.com/cdn/'+window.riotVer+'/data/en_US/champion.json', (body) ->
-    champs = Object.keys(body.data)
-    cb null, champs
+  hlp.ajaxRequest 'http://ddragon.leagueoflegends.com/cdn/'+r.riotVer+'/data/en_US/champion.json', (body) ->
+    cb null, Object.keys(body.data)
 
 
 # TODO: This doesn't work on Windows if the files were created with admin priveleges but are trying to delete without.

 * @callback {Function} Callback.
###
downloadItemSets = (cb) ->
  async.waterfall [
    getSettings
    getChampionGGVer
    getRiotVer
    getChamps
    requestChamps
    deleteOldBuilds
    saveToFile
    notProcessed
  ], (err) ->
    console.log(err) if err
    updateProgressBar(10) # Just max it.
    cl 'Looks like were all done. Login and enjoy!'

 * @param {Array} Array of strings of Champs from Riot.
 * @callback {Function} Callback.
###
requestChamps = (cb, r) ->
  async.eachLimit r.champs, 2, (champ, acb) ->
    updateProgressBar(90 / r.champs.length)
    requestPage {champ: champ}, () ->
      acb null

