public needed for unit tests
found and corrected some errors
some tests on ReduceImpl