This covers the extremely common case of replacing all uses of a Value
with a new op that is itself a user of the original Value.
This should also be a little bit more efficient than the
SmallPtrSet<Operation *, 1>{op} idiom that was being used before.
Nit: auto -> OpOperand
(should still fit in one line)