Got the rotation working. No idea how, did a lot of array fiddling and reversal of fiddling so I have no idea what the actual resulting changes were. Yay pointers