much custom fixies: added logger, console arguments, external update executor, copy existing files instead download, refactoring