Fixes the embOS backends for pw::sync::Mutex,
pw::sync::BinarySemaphore, pw::sync::CountingSemaphore, and
pw::this_thread::sleep_for to add one tick when invoking the native
API to comply with the for_at_least contract as we do not know how
far we are into the current tick.
Note this is not observable without the use of an independent clock.
This also adds explicit downcasting from int64_t to OS_TIME ticks
when invoking native APIs.
Change-Id: I113cbdfc1a88795df87223117e65a763ae050772
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/37280
Reviewed-by: Wyatt Hepler <hepler@google.com>
Commit-Queue: Ewout van Bekkum <ewout@google.com>