fix building on NetBSD 6 and use configure to check for non-standard fstype string in statvfs.

Hi, f_fstypename and f_basename are non-standard extentions to struct statvfs. Current configuration breaks on systems that have sys/statvfs.h but does not have these non-standard members (such as freebsd).
This patch uses configure to check for these members and only uses the statvfs code if statvfs has any of them.
The commit also includes a fix for NetBSD. NetBSD versions lower than 6.99 do use BSD-style subsecond timespec.