add combinations with/without repeat (iterator), init permutations, partitions (todo)