countdownlatch trysetcount bug fix + unit test

according to javadoc, we can't set count if count is not zero.
but if we do latch.trySetCount(0) it updates count and returns false.
this souldn't happen.