Ok, this should be it for pull requests for the day.

More cleanup, moving shit around.

There is now a monolithic call to `drParse`, which is how I think it should work (you only parse once, right?).

Also, more documentation.