Separated GenericTraitCollection from TraitCollection
Merge remote-tracking branch 'origin/Anathema3' into Anathema3