semaphore.h: fix mutex_unlock
semaphore.h: add readers-writer lock
spinlock.h: rename INIT_SPINLOCK to spinlock_init