JSON metadata conversion: support repeated columns

This allows arrays to be provided as arguments to an object key in the JSON metadata. If an array is present, then the column will be repeated multiple times in the output CSV to provide room for multiple results for compatibility with how we support repeated values in CSV.

Sample JSON input:

```json
[
    {
        "filename": "objects/foo.txt",
        "dc.title": "This is an object",
        "dc.subject": ["Subject 1", "Subject 2"]
    }
]
```

Which produces:

```csv
filename,dc.subject,dc.subject,dc.title
objects/foo.txt,Subject 1,Subject 2,This is an object
```

refs #6266