added SimpleSemaphore from previous assignment
completed assignment 3