Would be good to integrate smoothly into https://code.google.com/p/totallylazy/ we could use their `reduce` functions etc then... Need to look what work would be required to smooth the join between the two