How to implement queues functionally, and how to improve efficiency by using two lists instead of one.
Note that the textbook now calls the `front` the `outbox`, and the `back` the `inbox`, and the entire module a `BatchedQueue` instead of `TwoListQueue`.
Textbook: https://cs3110.github.io/textbook