registry: Implement recursive deletes for dir-backed registry.
When deleting a registry key that contains subkeys or values, Windows performs a
recursive deletion that removes any subkeys or values. This update makes
deletes for an dir-backed registry consistent with Windows.
The dir-backed registry relies on the underlying filesystem, which does not
generally have transactional integrity when performing multiple operations.
Therefore, if an error occurs during the recursive deletion, the dir-backed
registry may be left in an inconsistent state.
(This used to be commit
6b5fbf7e4e38342bcd80e63f46cd295f89ab1ee9)