WIP Add highlights

Refactor the decoration storage.

More to come...
Nitpick, but could we conditionally append the space and the class if it's defined? We'd need a `className` variable but I think that would be ok.