Generate isHTML*Element() / toHTML*Element() helper functions

Generate isHTML*Element() / toHTML*Element() helper functions using
html/HTMLTagNames.in as input. This avoids having to use macros to generate
these for each HTMLElement type. This is also safer because the generated
methods check the ContextFeatures and the RuntimeEnabledFeatures if needed.

The generated helpers are located in an HTMLElementTypeHelpers.h header that
is included in HTMLElement.h for convenience.

I am planning to use this header later on to make ElementTraversal more
powerful by letting the caller tell which type of Element (e.g.
HTMLTableRowElement) it wants to iterate on. It would look like:
ElementTraversal<HTMLTableRowElement>::next().

This is based on the following WebKit revision by <akling@apple.com>:
http://trac.webkit.org/changeset/154965

R=
BUG=346095

Review URL: https://codereview.chromium.org/175693007

git-svn-id: svn://svn.chromium.org/blink/trunk@167790 bbb929c8-8fbe-4397-9dbb-9b2b20218538