using worker pool to speed up downloads