Quick note: I have chosen to always use `require: 'A'` for directives because of the IE quirks related to using custom tags. I know it's nicer to use Elements for widget-type (replace: true) directives, but I think the IE quirks make it too painful.