The horror ... the horror ...

Refactors `MetaData.metaData` so that it is no longer a `Map[String, Any]`.

@gklopper led me down this rabbit hole ... 

There's a few other `Map[String, Any]` that we should look at, but they should be simpler to refactor, as it looks like they just ought to be `Map[String, String]`. (see `MetaData.openGraph` and `MetaData.cards`).
I guess I'd have expected something like

```json
{
  "references": [
    {
      "type": "esaFootballTeam",
      "id": "/football/team/48"
    }
  ]
}
```