std: Stop parameterizing some memcpy functions over RawPtr

It unsafe assumptions that any impl of RawPtr is for actual pointers,
that they can be copied by memcpy. Removing it is easy, so I don't
think it's solving a real problem.
std: Clean up the swap function a little
auto merge of #12143 : brson/rust/swap, r=alexcrichton

Thinking about swap as an example of unsafe programming. This cleans it up a bit. It also removes type parametrization over `RawPtr` from the memcpy functions to make this compile.