add download-only action, massive refactoring, some fixes