C implementation of a Queue