MapReduce, HashFilterReduce patterns, and changing the zero parameter in reduces to be consistent with the others. Closes #35 and #36