Merge pull request #236 in HDFFV/hdf5 from develop_merge_cache_image_04 to develop
Merged file shutdown changes from cache_image.
* commit '49fa0e8dbabe5019b1491845a963d8cfe41b59c1':
Bring file shutdown code from cache image branch
Merge code from cache image branch to split FSM ring into two types: raw data and metadata. Also, some more ring reset safeties and minor code cleanups.
Align w/incoming cache image changes, and improve recovery on errors.
Revert accidental changes to freespace open and close routines.
Remove 'const' from cache client pre_serialize callback, to reduce warnings, and correspondingly remove 'const' from some internal routines. Also rename some H5MF* routines to reflect their static/package usage.
Align with incoming cache_image branch changes: use the index list (instead of the hash buckets) for scanning the entries during a flush, and also add in counters for tracking operations during cache flushes.