perf: report min, max, mean, and std
also I prefer not to emit the timed expression more than once in the macro
remove global state from shootout benchmarks so they can be run multiple times