eliminate semaphore.Run

- fail when releasing twice

[#80393556]

Signed-off-by: Nick Wade <nwade@pivotal.io>
add fakes

Signed-off-by: Nick Wade <nwade@pivotal.io>