My take on themes is that the template files should only contain HTML and presentation logic.

And really don’t like themes that got a mangled title tag. Sometimes you can’t even override the default title with a plugin.

HTML5: Why use it at all?

div: Agree. The most important headline should be h1 and that is never the homepage name except for on the front page some times.

widgets list: Its very ugly to use lists that way. List are to display text I think. like grocery list. But list items can contain block elements. Check the standards both 3.2 and 4.01 say they can contain block.

function_exists: I agree. WP has hooks for a reason. They are there to make it easy to override.