EVF contains a bit of code called the"projection parser": it takes a projection list and converts it into a form useful for scan projection. The prior version handled single-level arrays, such as needed for the `columns` column in the text reader. For JSON, we must handle arbitrary column structures such as:
Adding the DICT type means that we must be a bit more general in the parser. This ticket fixes these issues.