normalizing step included, done with preprocessing
introduced wait bar and multithread support