Ust 4505/dev 4506 backend for composite nodegroups

An idea of simplification of RuleTarget. 
- merge with last master, so that's why there is so many commits
- remove all CompositionKind, 
- take advantage of the "no open world assumption" of sealed class hierarchy

All in all, that's around 50 lines less than the other implementation, and with fewer class to keep track of.