Merge pull request #991 in HDFFV/hdf5 from merge_func_enter_vol to develop
Commit API context and related changes
* commit '01a783dbee8160641a5a682f2116ffbd1ac123fe':
Correct errors with non-"instrumented library" builds (production & parallel, generally speaking).
Update java error stack tests
Revert using H5MF_sect_small_can_shrink and H5MF_sect_small_shrink for the file's free space manager (and add a comment about them).
Add comment for the file flush when the file low / high bounds are changed after a file is open.
Expanded comments abuot H5CX_t fields.
Add an assert to verify that we don't write when between MPI_Barrier() calls during a flush.
Add comments for internal structs.
Remove redundant 'is_collective' parameter from H5CX_set_loc.
Correct typo in comment.
Revert some tangential code cleanups.
Add API context source files to CMake configuration file.
Corrections for parallel I/O & tests.
Update handling of reporting for breaking collective I/O when the default DXPL is used.
Update encoded DXPLs to reflect changes in properties.
Correct typo for error checking malloc return value.
Refactor H5CX code to reduce duplication.
Cleanup API context function usage.
Add API context interface and use it throughout the library.