Split out the bench and the measurement code, so that appropriate SLOC measurements could be taken. Also fixed a small bug where the warmup bench was not getting a random seed each run.