nfs4: Fix #9558: in some cases sending SETATTR without open owner is legal
nfs4: we can not use LOOKUPP on regular files when recovering file handle
nfs4: update vnode objects and cached data when rename overrides a file
 * this patch also fixes unnecessary cache invalidation when a file is renamed
   without changing its parent directory
nfs4: support hard links properly

The main purpose of this patch is to prevent VFS from removing a vnode to early
what might have happened if the NFS client knew it had more than one name but
then one of them was deleted. Moreover, all discovered and still valid names
are stored what may be useful in proper file handle recovery when they are
volatile.

This patch fixes both #9558 and #9561.