Added string permutation algorithm (both dup and no_dup ones)