Multiple bug fixes and enhancements

Reduce lock contention (attr_lock and content_lock) for cache_inode rename, remove and link operations.

Replace wasteful and error prone (variable sized) struct fsal_cookie with fsal_cookie_t (uint64_t)

Keep directory's CACHE_INODE_TRUST_CONTENT flag on where possible

Fix multiple issues in cache_inode_lock_trust_attrs() and cache_inode_check_trust()
1. In cache_inode_check_trust(), in case need_wr_lock=true, attributes were not actually refreshed
2. In cache_inode_check_trust(), ATTR_RDATTR_ERR was not checked for
3. In cache_inode_lock_trust_attrs() directory content was not invalidated
4. In cache_inode_lock_trust_attrs() current_time was not properly initialized.
5. In cache_inode_lock_trust_attrs() attr_time was checked even when expire_type_attr == CACHE_INODE_EXPIRE_NEVER 
6. In cache_inode_lock_trust_attrs() attributes were not refreshed in case expire_type_attr == CACHE_INODE_EXPIRE_IMMEDIATE and less than 1 second passed.
7. time() was called multiple times (even when not needed at all) - could be expensive on some platforms.

Misc. bug fixes