Switched to BackgroundWorker and customized model class for better UI responsivity.