added a comment - - edited
Attaching updated patches. I think this about does it although this will need more testing. I removed some css elements that caused problems in IE. Their removal didn't seem to cause any problems I have noticed in any browser.
Paul, I think this should fix the alignment problem you are experiencing.
Tested this in Firefox 3.5.6, IE 6, 7 and 8 and Safari 4.0.4
Also, note that one of the problems is that IE 7 doesnt appear to obey nobreaks on TDs correctly. That's why I added code that switches out regular spaces in favour of non-breaking spaces. As an alternative we could put spans within the tds and put the nobreaks on the spans.