vfs: shorten the locking window for vfs/refresh
vfs: shorten the locking window for vfs/refresh

Before this change we locked the root directory, recursively fetched
the listing, applied it then unlocked the root directory.

After this change we recursively fetch the listing then apply it with
the root directory locked which shortens the time that the root
directory is locked greatly.

With the original method and the new method the subdirectories are
left unlocked and so potentially could be changed leading to
inconsistencies.  This change makes the potential for inconsistencies
slightly worse by leaving the root directory unlocked at a gain of a
much more responsive system while runing vfs/refresh.

See: https://forum.rclone.org/t/rclone-rc-vfs-refresh-locking-directory-being-refreshed/9004

ncw/rclone,olihey/rclone,ncw/rclone,B4dM4n/rclone,B4dM4n/rclone,B4dM4n/rclone,ncw/rclone,ncw/rclone,olihey/rclone,olihey/rclone,B4dM4n/rclone,olihey/rclone