Well, it also has the function of getting rid of the old package and
being part of the normal upgrade path. The latter is important. If
the previous version had major data loss or security issues,
introducing a new package with a different name doesn't have the
semantics you want.
Well, epochs don't magically do that either. :)
They certainly do? Or I'm missing your point. (To be clear, by "get rid
of the old package" I mean "from the active Debian archive," not from
everywhere it was ever installed.)