loading overhaul, IProgressListener