Split custom element script use and move it into bindings
In the future Web Modules may define custom elements from C++. This
adds some abstract classes in preparation for that.
In addition, adds some context death tests.
BUG=
594918
Committed:
https://crrev.com/c4ccc6b681aba1870c8aed69b3a18201ee97ddd4
Cr-Commit-Position: refs/heads/master@{#396672}