ContiguousDeque
A Deque is a data structure comprised of two queues. This implementation has a front queue, which is a reversed ContiguousArray, and a back queue, which is a ContiguousArray. Operations at either end of the Deque have the same complexity as operations on the end of either ContiguousArray.