groups/types.py: Renamed `DirectProduct` to `Direct`
Gave cayley.py an `-a` option for outputting ASCII tables instead of Unicode
permutation.py: Added a method for permuting a list of arbitrary values