Ports from aria-toolkit and enhancements

Added audit for multiple explicit owners.
Added audit for aria-owns DOM descendant.

Enhanced (and renamed) "non-existent-labelledby" audit to cover all id reference types: 
 * aria-activedescendant
 * aria-controls
 * aria-describedby
 * aria-flowto
 * aria-labelledby
 * aria-owns

Added a few utility methods to support some of the new functionality.
Added IE11 support.
Added unit tests for RequiredAriaAttributeMissing audit.
Unit tests for all changes.
On Fri, Aug 15, 2014 at 12:24 AM, RickSBrown <notifications@github.com>
wrote:

> In src/js/AccessibilityUtils.js:
>
> > @@ -1390,3 +1393,56 @@ axs.utils.getQuerySelectorText = function(obj) {
> >
> >    return '';
> >  };
> > +
> > +/**
> > + * Gets elements that refer to this element in an ARIA attribute that takes an
> > + * ID reference list or single ID reference.
> > + * @param {!string} attributeName Name of an ARIA attribute, e.g. 'aria-owns'.
> > + * @param {!Element} element a potential referent.
> > + * @return {NodeList} The elements that refer to this element.
> > + */
> > +axs.utils.getIdReferrers = function(attributeName, element) {
> > +    var propertyType, referrerQuery, id = element.id,
>
> When you come to Sydney we are going to have to have a serious discussion
> about how manual hoisting is the way of the samurai :)
> You're the boss so I'll "unhoist" them even though it's against my bushido.
>
> (BTW I could also explain why tabs are better than spaces but I have
> already conceded defeat on that front)
>

Looking forward to that discussion!
Yeah, let's not get into tabs v. spaces...