add npm package async.
rewrite joinZone async callback chain with 'async'