at long last, doreduce and over play nicely together
add :step, :limit options for doreduce
add tests for 'break'