edn::Value::Vector
edn::Value::map
value_and_span
edn::ValueAndSpan
I wasn't able to abstract over `edn::Value` and `edn::ValueAndSpan`; there are multiple obstacles. I chose to roll with `edn::ValueAndSpan` since it exposes the additional span information that we will want to form good error messages in the future.