You say to do a lot of things in a web development context, but you fail to say HOW. A friend pointed me at this article asking HOW to do your #6.
The article would be much less shallow and meaningless if you explained things like the CSS "hyphen" property, the "shy' character, and how <wbr> does NOT insert a hyphen.
Or if you explained "eye-balling" text-indent and/or using first-letter to fix the width using inline-block for your "hanging alignment".
Though some of your points are impractical/impossible -- like the second half of #3 -- unless you're willing to drag your development practices back to ugly garbage such as fixed layout. With modern layout done properly being semi-fluid and elastic, designing content to a layout is an exercise in futility.
NOT that designing content to layout was ever a good idea. It's actually pretty dumbass if you embrace the idea that content dictates markup, content + markup + device capabilities - user limitations should dictate layout. Particularly given that one's HTML and content should never be about what things look like; that's CSS' job.