support FoldOperations in GroupBuilder
try to keep the public api small