Extensive refactor of the entire upload codebase, to assist with code cleanliness, and pave the way for further work.
 - Publisher-specific code has been refactored extensively. Instead of single generator, passing around publisher config factory,
each publisher has its own generators for each type of element. This improves testability and separates concerns.
 - Version and OnDemand generation has been improved. Now all generators are generating versions/ondemands based upon the ids produced by the
respective idGenerator.
 - all configuration switching has been removed from the TvAnytimeFeedsModule, as this has no upload code, so should be enabled all the time.
 - chunk size has been removed, as it is not being used.
Add in NitroServiceMapping, reading from appropriate csv file
Add in synopses for Nitro generated from short/medium/long descriptions, and matching test. Also refactor out common equivalence classes.
Add broadcast PIDs to broadcast events
Initial version of broadcast/onDemand id synthesis. Ids aren't hashed yet though.
Add new GenreMapping, as existing mapping interface was not flexible enough to accomodate BBC style genres.
Add NitroGenreMapping, and appropriate test cases.
Misc TVA improvements:
 - Refactor OnDemand generation to account for 1:many service mapping.
 - Pass through MasterBrand on content.
Misc TVA-improvements, towards the general goal of acheiving successful uploads.
Rename module because refactoring names in git == bad times
Tweak genres output for mediatype/specialization so they deal appropriately with Radio content.
Refactor Transactions -> Tasks, with own IDs, and better representation of remote responses.
Add in regex matching for content uri/transaction id queries to the Tasks store, and fix persistence tests broken by tasks refactor
Update On-demand service crid based on new information from YV regarding service ids
Ensure remote Id is referred to consistently, rather than sporadic references to transaction id
 - Refactor Upload tasks to eliminate pointless 'isBootstrap' flag
 - Refactor broadcast/on-demand hierarchy expansion to reduce duplication of code and increase testability.
Various tweaks to upload code.
 - Checked exceptions generated from generation of TVA output. This feeds through to better errors on the frontend
 - Renamed YouViewClient to YouViewService.
Minor tweaks following review - extraction of methods, plus throwing upon unexpected data when mapping genres.
Merge branch 'mbst-9990-be-actions'

Conflicts:
	src/main/java/org/atlasapi/feeds/youview/TVAnytimeFeedsModule.java
	src/main/java/org/atlasapi/feeds/youview/YouViewUploadModule.java
	src/main/java/org/atlasapi/feeds/youview/YouViewUploadTask.java
	src/main/java/org/atlasapi/feeds/youview/persistence/MongoYouViewLastUpdatedStore.java
	src/main/java/org/atlasapi/feeds/youview/tasks/TaskQuery.java
	src/main/java/org/atlasapi/feeds/youview/transactions/TransactionStatus.java
	src/main/java/org/atlasapi/feeds/youview/transactions/persistence/TransactionStatusTranslator.java
	src/test/java/org/atlasapi/feeds/youview/BootstrapIntegrationTest.java
	src/test/java/org/atlasapi/feeds/youview/DeltaIntegrationTest.java
	src/test/java/org/atlasapi/feeds/youview/YouViewLastUpdatedStoreTest.java