Issue #65: Add a blocking=False option to the Semaphore lock object.
changelog / doc improvement and test for #65