fixes #15

using @hadley’s trick of importing a single function
moving responsibility for combination and vectorization away from the group operation #16
reset for future release
reduce and combine are now split
need mergeability bit
for now there's only one vectorization option

but in the future we could split the decision for combiner vs reducer
and even further,
dead code
use the new semantics for merge able operations to simplify code
dropped is.root from API fixes #16

It seems the new composition semantics for merge able operation allows
to replace
do(data, function(x) if(is.root(x)) a(b(x)) else b(x))
with
do(do(data, b), a)