Here is another rebase with a commit message to help review. I alsotweaked some comments.
ThanksRichard