Extract shared specs, use in RegisterableGoneRoute

www.agileplannerapp.com/boards/173808/cards/8116

Implementing [Gone items](https://github.com/alphagov/content-store/blob/master/doc/gone_item.md) in content-store.
Here's the model and some refactoring.
Updating RegisterableRouteSet to handle gone items

www.agileplannerapp.com/boards/173808/cards/8116

Updated related docs as well.