Cyclical dependency issues still in 4.9

how many is way too much, 15-20 unique functions needed to handle communication?