See Sean DeNigris' Affiliations issue. github
> The problem is that an affiliation is a link between an organization and a person, but does not "belong to" either. So it's awkward to model via instVars because the two sides have to be coordinated. I'd theoretically like to have links as first class objects, but where to put them? And how does either side "find" them. Maybe it's a first class object that holds onto both sides and the commands, like add/remove are on the link. That might not be too bad.
MpAffiliation.class.st
hash ^ self organization hash bitXor: (self person hash bitXor: self role hash)
*Role timespan* issue. github