Add locale field to content items

This signifies the language of the content item. It defaults to "en", but can be
explicitly set by publishing applications for content that is non-English.
Add a migration to set the locale for all existing content items

This sets the locale for all existing content that isn't a "gone" or a
"redirect".
DRY up the concept of a non-renderable format