Cycle Permutation Group Theory