See the commit messages for details. The main idea is to try to make it safe(r) (and more efficient) to remove subrepos from the working directory. This is RFC because my solution may be a bit controversial, but I think it can work pretty well.