seriously refactor measure_reduce
emulate functools.wraps()
more bashing on measure_reduce
reorder, comments
version bump