Implemented StrongSemaphore
Fix weird branch thing

Added StrongSemaphore.cs compilation unit to .csproj
Added IBuffer, IPut, ITake interfaces.

The IBuffer interface abstracts a producer/consumer workflow. It
provides sub-interfaces IPut and ITake for consumers that only require
unidirectional usage of the interface.
Added StrongSemaphore test
Merge branch 'strong-semaphore'