I've been having a look at the more recent CVS code and update my list of possible and desirable changes that I'd like to see for 1.5
remove all font tags
I was kind of surprised to see these still here. They don't really affect the XHTML-ness of the code, but they generally send the wrong signal and are an accessibility problem. They fall into three broad categories, hard coded colors (e.g. red for error), hard coded text sizes, or hard coded fonts. It's a relatively simple mechanical task to get rid of them e.g. red color -> <em class="error">
remove all inline CSS using style="" attributes
I think someone objected to this when I mentioned it earlier. I really can't think of one good reason for doing this and the examples seen when running grep -R "style=" . should almost certainly all be rationalised and moved to the CSS.
remove reliance on config.php for defining colors
This needs only a few changes to the code here and there. The theme I've attached outlines these in bright purple. The main code is okay in this regard, it's just bits and bobs within the activities. To fix this more semantic HTML and id and class hooks for CSS need to be added to the unstylable sections.
remove all th, thead, tbody etc. tags that are not used for tabular data
This appears to have been done for the right reasons, but isn't really appropriate. See Joe Clark's Building Accessible Websites Chapter 10: Tables and Frames, "what not to do" for more.
minimise the number of tables used for positioning
The theme I've attached also attempts to eliminate tables from the header (untested with Internet Explorer as yet, so it probably breaks horribly).