Держи в голове такой концепт -- все строится деревом. Один класс создает другой, а последний создает еще один. Из этого вытекает как раз возможность передавать в создаваемые классы средство связи с другими. Складывать все в статики однажды выстрелит тебе в ногу, ибо у многих компонентов ограниченное время жизни, которое нужно всегда брать в расчет.