Alternatives to AngularJS's built-in bindings that avoid taxing the digest cycle