Project: mesos
Issue MESOS-2805: Make synchronized as primary form of synchronization.
Re-organize Synchronized to allow {{synchronized(m)}} to work on: 1. {{std::mutex}} 2. {{std::recursive_mutex}} 3. {{std::atomic_flag}} Move synchronized.hpp into stout, so that developers don't think it's part of the utility suite for actors in libprocess. Remove references to internal.hpp and replace them with {{std::atomic_flag}} synchronization.
Story points: 8