Initial commit of semaphore class & tests
Stubs for supporting the setOnInsert command
Updated test cases
Handle upsert with multiple semaphores better
fix typos in init files
Store a max value for the semaphore

- avoid overreleasing