umount-chroot: Call umount one mount point at a time

umount, called with multiple parameters, may return 0 even if many
mount points cannot be unmounted, due to an overflow in its exit
code.

We fix this by passing `-L 1` to `xargs`.

Finally, we sort mount points by string length, to minimize the
number of loops required.