Hadn't actually added memmove to my pipe program, so previous commit
wasn't true. Actually, seems like my implementation was probably broken
(weird kernel panics happening all over the place), but when I just
switched to using standard memmove I was getting times of less than 1
second on my home desktop. I'm pretty satisfied with that - at least
enough to not poke around much with memmove.