Large number of data races in unit tests

Created by: NAThompson

In preparation for parallel reads, I added the following to the CMakeLists.txt and ran the unit tests:

if(CMAKE_BUILD_TYPE MATCHES "Debug")
  if(CMAKE_CXX_COMPILER_ID MATCHES "^(AppleClang|Clang|GNU)")
    set(CMAKE_CXX_FLAGS_DEBUG "-Wall -g -O2 -Wfatal-errors -fsanitize=thread -fno-omit-frame-pointer")
  endif()
endif()

A very large number of race conditions were detected. A few were in pthread_create, which arguably is bad, but not the bailiwick of ADIOS. But a large number of them are originating in ADIOS2. I have attached just one of these here, but many tests are afflicted by these problems.

race.txt