Seperate all queue code into queue.c and queue.h