Add group_with/3

See #7