Factor location provider into its own file.
Better status reporting for passes.
Ensure a minimum number of samples when profiling by looping the program.