The service now has a private std::mutex that is used for synchronization. Renamed the vector of services to use snake_case. Use lock guards with mutexes to make usage easier and safer. This makes the code smaller as well as slightly easier to read.