Update Element.prototype.mutation

- update mutation helper
- add tests.js
- update browser compatibility, cleanup
Merge pull request #161 from Financial-Times/update-element-mutation

Update Element.prototype.mutation