Fixture cleanup

this funnels all hq fixtures through a single method which does all the precondition checking so that the fixture generators themselves don't have to reproduce all the same error handling logic introduced by the fact that casexml doesn't know about `CommCareUser`.