optimizations, small ui additions, OpenMP parallelization