Queue.java is the interface for queues in bailey's library.
AbstractQueue.java implements enqueue and dequeue as calls to add and remove. This will be
the same regardless of implementation, so it is convenient to do in an abstract class.
QueueList.java is a linked list implementation of a queue.
QueueArray.java is an array based implementation of a queue.