Adding C wrappers for several swap routines and fixing a bug in the BusingerGolub driver relating to permutation transposes