Convert to new Locations Format

Locations becomes an array of available media. Create and Update
methods accept an array of mime types. If a particular peice of media
has multiple representations they should be sent as a comma-seperated
string of mime types.

Examples:

two jpeg images

```
"locations": ["image/jpeg", "image/jpeg"]
``

A single video encoded multiple ways

```
"locations": ["video/webm", "video/mp4"]
```

Closes #369 Closes #341