Symbols are primatives for unique values in javascript
> Symbol(value) returns a unique symbol
> Symbol.for(value) returns a unique symbol, but two calls using the
same key will return the same symbol, within the scope
They can be useful because they are hidden from most iteration functions.
For ex, if you want to add a value to an object that you got back from a
third-party api. This will make sure your value doesn't appear in iteration
functions, and also won't require changing how the api is set up