Fixes to coexist with Polymer.

- Don't depend on HTML*Element.name or HTML*Element.toString().
  Polymer redefines HTMLElement such that HTMLElement.name == "i".

- WebKitMutationObserver doesn't work when Polymer is loaded; use MutationObserver instead.
add tests for register() error reporting
add polymer platform for testing