support FoldOperations in GroupBuilder
try to keep the public api small
Merge branch 'master' into tresata