Explain why we call $http in an $apply callback