"""
classes and abstraction
contract between the programmer and the class that they're using

the class is going to define some "public" actions that you can do with the class
the programmers expects those actions / data to exist

(however, the underlying details can change, and the programmer doesn't have to know about that)
"""
"""
"it's a line"
first come first served
an ordered collection of elements, where the first element in is the first element out
fifo queue (first-in, first-out)
last in, first out... stack
priority queue
"""
"""
implement a fifo queue
enqueue
dequeue
doesn't matter what implementation
"""















