The standard talks about swap(t, u), so honor two template parameters in our trait