Bug1080894 - Route audio to headphones when they're available at call star

I don't have a string opinion but for my is clearer:

1) CallManager manages the logic so when this is initialized it should check if the speaker has to play or not
2) CallManagerUI only knows about user interface so it should activate/disable the button accordingly

On the other hand if headphone state changes, the CallManager should ask to CallManagerUI to change the button and CallManager should change the speaker. In this code CallManager calls to CallManagerUI and this calls again to CallManager. This is confusing for me