M: atomic is indeed needed, also a min version for boost (introduction of atomic)