Fixed some dependency issues, still have circular dependency between priorityqueue, semaphore, and main kernel header.