Add support for the Element.classList interface

The classList interface has been available since IE10, and is quite
widely available on modern browsers. Using this provides a hefty
performance increase when highlighting large documents