Add a copytest script and program

This program/script pair examines how gcc is performing various copies
to aid in disagnostics.
Generic copy/swap (remove function pointers from struct)

This removes the copy and swap function pointers from struct qsort_def
and utilizes generic copy, swap and ror functions that are:
1. Less prone to be not inlined due to weaknesses in gcc's optimizer
   (see onlinedocs for always_inline),
2. Now perform equally as a custom hard-coded copy instruction.
3. Now utilize gcc's __builtin_assume_asligned() that correctly tells
   gcc the alignment of some data.