How AngularJS Data Binding and the Digest Cycle Work | CodeTrail