Use newFixedThreadPool to allow user to choose max number of threads
BufferedHCDownloader (Map<String, Object>) constructor added to allow
several values through an argument
Download method call is moved to Runnable class Url2File
Logger added to log Utils.writeToTempFile
Reingenieria
Callback