Delegator Pattern for AngularJS