Rewrite TCMalloc_SpinLock against C++ atomics

Memory fences seem to have issues on Windows ARM, so this commit
replaces the platform-specific implementation with one that works
on all C++11 platforms.