Cl/mongo semaphore

Rick -

This is a working implementation of semaphore with with some stubs for making setOnInsert command work with mim. Right now, it basically just does a set, but it is enough to allow the rudimentary tests to pass.