shadow-dom: Added tests that checks matching order of CSS rules with @host

Added tests of matching order of CSS rules for @host.
This tests is related to the '@host @-rule' sections of the specs.
http://www.w3.org/TR/shadow-dom/#host-at-rule
Update the test of ::distributed() pseudo-element for http://www.w3.org/TR/2013/WD-shadow-dom-20130514.
Add the test for Shadow-DOM ::distributed() pseudo-element with Relative selector.
shadow dom: add test for text decoration
Modify reference html
The only first <shadow> element is used when the shadow tree has multiple <shadow> elements. Original tree's node is not inserted into the second <shadow> element.
shadow-dom: Fixed indent style and performance improvement

Reflects the comment of the review of PR #140 and #157.
Merge pull request #210 from summerwind/submission/summerwind

shadow-dom: Fixed indent style and performance improvement
Fixed indent style and performance improvement #189

Reflects the comment of the review of PR #189
shadow-dom: Fixed the title of test #189
test to assess mediastreamtrack id uniqueness
update link back to spec
Modify description
shadow-dom: Add license notice to testcommon.js.
shadow-dom: Remove unnecessary functions from testcommon.js.

These functions are not used since the last clean-up.
shadow-dom: Rename HTML5_TAG in testcommon.js so its name is more descriptive.
shadow-dom: Handle vendor prefixes in a more sophisticated way.

This change adds a functionality to testcommon.js that enables the tests to
handle vendor prefixes without manual intervention. When testcommon.js is
loaded, it automatically adds unprefixed methods and attributes if necessary.

This change obsoletes the existing utility functions related to vendor
prefixes, but they cannot be removed at this moment, because there are many
tests using them. These functions will be removed eventually.
shadow-dom: Rework two tests that check createShadowRoot()'s behavior.

As testcommon.js takes care of vendor prefixes, we can now simplify these tests
by using standard DOM methods.

The old test-001.html is now renamed to elements-001.html, and test-002.html
has become non-element-nodes-001.html to better reflect the test content.

The code of elements-001.html has become drastically simple, because of
the use of HTML5_ELEMENT_NAMES from testcommon.js and generate_tests() from
testharness.js.

The content of non-element-nodes-001.html has been sorted out, too. It also
adds new tests that check whether an appropriate exception is thrown when
createShadowRoot() is called from a non-element node (as defined in section
10.2.2 of the specification).

These tests were moved to the directory for section 10.2.2, because there
seems no reference in section 4 about the requirements that the tests try to
validate.
Merge pull request #136 from yutak/shadow-dom/create-shadow-root

shadow-dom: Rework two tests that check createShadowRoot()'s behavior.
Merge pull request #189 from summerwind/submission/matching-order

shadow-dom: Added tests that checks matching order of CSS rules with @host