Attached is a new version with the tests cleaned up a bit (more comments mostly).
@Michael, did you have a chance to look at the last version? Because I feel that the patch is pretty much ready for a committer to look at, at this point.