public Network(IEnumerable <IProgrammer> programmers, IDegreesOfSeparationFactory degreesOfSeparationFactory, ITeamFactory teamFactory, IRankCalculatorFactory rankCalculatorFactory)
 {
     _programmers         = programmers;
     _degreesOfSeparation = degreesOfSeparationFactory.BuildDegreesOfSeparation(_programmers);
     _teamFactory         = teamFactory;
     _rankCalculator      = rankCalculatorFactory.BuildRankCalculator();
     _rankCalculator.Calculate(_programmers);
 }
 public void Start()
 {
     dojoAuditor.Audit();
     testAuditor.Audit();
     rankCalculator.Calculate();
 }