Add support for 'role' attribute.

This commit adds support for 'role' attribute for all HTML elements
except:
 - those elements that are obsolete in HTML5. (See a list of all HTML5
   elements here: http://dev.w3.org/html5/markup/elements.html)
 - those elements that can have "no role" AND have strong native
   semantics. See
   http://www.w3.org/html/wg/drafts/html/master/dom.html#sec-strong-native-semantics
   (The only exception to this exception is the "input" element.)
Merge commit '1cb812304402d030d6a91d1f43645bde70b3b0a8'

* commit '1cb812304402d030d6a91d1f43645bde70b3b0a8':
  Add support for 'role' attribute.

Conflicts:
	include/tidyenum.h
	src/attrdict.c
	src/attrs.h
Rearrange enum to match what `attrs.c` expects