Fixed support for Opera 12.
Simplified declarations of the Element.getElements functions.
Moved most Element.prototype functions to HTMLElement.prototype because:
- It consolidates the main DOM-manipulating functions
- Firebolt only supports HTMLElements
- Some browsers call functions that are lower in an element's prototype chain faster (since HTMLElement is lower than Element)
No longer using the native classList.add or remove and added a section for overriding functions for compatibility with IE 9.