swap_ptr: rm equality check

This isn't needed semantically, and it's the wrong case to optimize for.
add memcpy intrinsic to mirror memmove
indentation fix
optimize util::swap, &mut pointers never alias
auto merge of #6710 : thestinger/rust/swap, r=catamorphism