Created groundwork for semaphores