This turned into a pretty big cleanup. However, it reduced (by a small amount) the amount of code, and complexity, and I like it.
Comments welcome. This one is signed off, though there is a bit of todo left as noted in the patch.
boots on qemu and alix1c.
thanks
ron