Add generateFullPermutations iterate version
Clean up for Permutation