I only skimmed through it very quickly, but it looks like you did a good job.

I'll have to give it a whirl sometime.