Add support for redirect-type items.

This allows the content-store to handle items that represent a redirect.  See [docs](https://github.com/alphagov/content-store/blob/master/doc/input_examples/redirect_item.md) for more details.
I think I wanted to constrain the set of fields available.  I'm not sure exactly why now - I think it was to help with the refactoring.  Looking at it now, I think it makes sense for these to be `OpenStruct`s.  I'll update.