dirstatemap: replace `removefile` by an explicit `entry.set_untracked()`

Authored by marmoute.


dirstatemap: replace removefile by an explicit entry.set_untracked()

All the other caller goes through reset_state, so we can safely have an
explicit method on DirstateItem object.
This means that all the logic to preserve the previous state (from p2, merged,
etc) is now properly encapsulated within the DirstateItem. This pave the way to
using different storage for these information.

Differential Revision: https://phab.mercurial-scm.org/D11315