copy boost::noncopyable in extra/noncopyable.h, use <atomic> instead Atomic.h