- added all missing permutation type handler (some comments have to be
added)

- added a permutation type enum