Merge branch 'channel-descriptions' into dev
Bug fixes

- code tidy (ArticlePromotionRedemptionResponseMaker)
- article promotions now respect is_active
- ArticlePromotions code tidy
- UserRepository now corruptly checks for no user returned for
invalid/unknown accessKey
Merge branch 'bug-fixes' into dev
Promotions updates

- ArticlePromotionRedemptionResponseMaker now calls a check to see if
the user has already redeemed a supplied code
- PromotionRepository - new method to check for user redemption of
supplied code
- New API messaging
- New test to check invalid user access key supply
Bug fix

- competition entry now correctly checks for previous user entries
User districts

- New UserDistrictPreferenceResponseMaker
- Updated UserPreferencesResponseMaker to use UserResponder::verify
- New userRepository::setUserDistrictPreferences method
- UserTransformer now looks for and transforms user inactive channels
and categories as well as districts
- UserController:: districtPreferences()
- API messaging for districts
- New user/districts route
Merge branch 'user-districts' into dev
User District Article Filtering

- ArticleResponseMaker now provides user to
ArticleRepository::getRelatedArticles
- code tidy SessionseResponseMaker
- ArticleRepository filters all articles through user districts
- New user district model
- New user district relationship
- UserResponder tidy up
- Logging in now returns a full profile as well as any content
associations (districts, inactive channels etc..)
- New user district organiser
- ArticleTransformer now sets isPromoted for all articles
Merge branch 'user-districts' into dev
Amalgamated user prefs, full page ads

- Updated to provide a single endpoint to allow for the setting of
channel, sub-channels, categories and districts from the user
preference screen.
- Articles at category level now return a 4th adverts marked as ‘full
page’
- User preferences now accept a GET to retrieve all channel and
district data as well as a POST to set the inEnabled & isPromoted flags
against each content item
Sponsor updates
Re-worked UserPreferenceResponseMaker
Merge branch 'user-prefs-v2' into dev
Bug fix - SponsorResponder
User preference updates
Removal of account nickname field
Bug fix - missing argument for setPrefs
Moving full page ads out into their own section
Possible bug fix
Change single ads to double in patternMaker