General purpose FIFO first-in first-out queue implemented in C language