mergestate: split up reset() for its two use cases
We only have one place that calls ms.reset() with any
arguments. That place is mergestate.clean(). The callers that call
the function with no arguments seem to all just want delete the
mergestate -- none of them look at the instance after calling
reset(). Let's separate out the two different use cases to make the
code clearer. I'll clean up further soon.
Differential Revision: https://phab.mercurial-scm.org/D9033