Improve error handling and progress indication