Update category scenarios
Simplify category scenario descriptions
Add a trait to create one of each of the content items within the category
Distinguish between child, parent and grandparent categories
Model categories as having child categories

Both can contain items
Show grandparent, parent and child category pages
Articles are returned from the API with `type' set to 'guide'
Model currently unsupported contents types with an `Other' entity
Return an Other instead of nil for unsupported content types when reading a category
Treat a category with nil contents as a child category
Add a `description' attribute to the Other entity
Take into consideration the inconsistent category hierarchy

We have some top-level categories containing child categories which
themselves don't contain grandchild categories

NOTE: a category returning true for #grandparent? will now also return true
      for #parent?
Use a new CategoryReader when populating child categories
Add 'type' attribute to Article and Other entities
Add a decorator to use with category contents
Pass the 'type' attribute through when instantiating a Category
Use `path' from decorator when linking to items