Start re-implementing the queue