Major refactoring, improved performance, separated file persistance logic from main model and created class (only structure) for file management (download) and added a window showing progress for long operations (only structure)