few changes to file structure and new recursive permutation algorithm