Fix type_traits and atomic to compile in c++98 mode on gcc.

Replaces some c++11 constructs with equivalent c++98 ones. Removes
standard library features that depend on C++11.

Change-Id: Ib46e3e856fdddca00893930d90e8f1c1877c082d