simplify case statements for windows versions
refactoring of currently functionality to make it cleaner code
fixing #6 - adding support for downloading the file when source_dir is not specified