Okay, sorry to bundle three things one PR, but I only thought to do a PR after I had already made all these changes.
I wrapped the whole library under a namespace named after it. It was really annoying to have it just be a class with a somewhat generic name. If you want, I guess you can remove this, but I personally think it should be under a namespace.
I added basic YAML support.
I found that in my 63k line test file colorization performance was very slow. I modified it to only colorize the visible viewport.
Okay, sorry to bundle three things one PR, but I only thought to do a PR after I had already made all these changes.