nfs_destroy_context: handle NULL pointers gracefully

... and remove superfluous code while at it:
* free() can handle NULL-ptrs just fine so there's no need to check for these
* there's no need to set members to NULL if the containing struct is about
  to be free'd too (except catching use-after-free, but for that we have
  valgrind and clang analyzer).

Signed-off-by: Arne Redlich <arne.redlich@googlemail.com>
nfs_close_async: handle NULL-pointers gracefully

... and remove superfluous checks / assignments.
In case of a NULL nfsfh the callback will be invoked nevertheless.

Signed-off-by: Arne Redlich <arne.redlich@googlemail.com>
nfs_free_nfsdir: handle NULL pointers gracefully

... and remove superfluous NULL check for pointers passed to free()

Signed-off-by: Arne Redlich <arne.redlich@googlemail.com>