make download tool pluggable