Add SimpleMutex class and platform specific mutex function

Add SimpleMutex class and platform specific mutex function and SimpleMutex unit test
@arstrube I prefer them all to be the same but just because I think it doesn't really matter much. So either way, I'll merge it as long as it has BSD license.