feat(ngAttr): implement conditional/interpolated attributes directive

The ngAttr directive allows for attributes to be conditionally applied to an
element. It also supports attributes with interpolated values.

1. Simple case: `ng-attr="{checked: isChecked}"`

2. With values: `ng-attr="'data-whatever={{value}}'"`

3. Set of attributes with interpolated values:
   `ng-attr="['attr1={{a}}', 'attr2={{b()}}']"`

4. Conditional attributes with values:
   `ng-attr="{'data-whatever=shmee': showWhatever&&!flurp()}"`