Generating permutations by looking at proper subsets and concatenating