MB-14808: fix crash in _bcache_evict race with bcache_remove_file
MB-14808: fix crash in _bcache_evict race with bcache_remove_file

In _bcache_evict() fileA picks fileB as victim, and just then fileB
is closed. Crash happens in _bcache_evict as it accesses freed memory

Use ref_counters and file_zombies list to delay deletions if file is
in use. Garbage collect file_zombies list on open, close and shutdown

Change-Id: If4f3015bfcd2db720408df334c981ba59ca99efb

yyangpan/forestdb,joliss/forestdb,wurikiji/forestdb,couchbase/forestdb,zhaog/forestdb,sushmaad/forestdb,jinxuan/forestdb,joliss/forestdb,hisundar/forestdb,sushmaad/forestdb,wurikiji/forestdb,yyangpan/forestdb,zhaog/forestdb,couchbase/forestdb,hisundar/forestdb,jinxuan/forestdb