Calling std::swap isn't legal from CUDA code, but the new vtkm::Swap method is safe. It currently does a naive swap when compiling CUDA code, and falls back to an ADL swap