Refactored bindings to use a scope + watch API