added semaphores against concurrent adding of features