Define extra artefact factories using traits

This defines some additional factories that I wanted to use in the content api's tests, specifically around creating Whitehall artefacts and live/draft/archived artefacts.

For consistency, I've rolled the existing non_publisher_artefact factory into this too.