About the class names, and HTML structure, here's good starting guidelines
http://www.idpf.org/epub/vocab/structure/
https://en.wikipedia.org/wiki/Book_design
I concur with the explicit class name, and one could borrow from those guidelines aswell: "heading-label" and "heading-number" are good picks aswell.
Emphasis structure is not mentioned there, but there's for instance
http://grammar.ccc.commnet.edu/grammar/italics.htm
http://www.dailywritingtips.com/how-...-your-writing/
...
About the header tags, I'm not quite sure it's a solid idea to assign the "numbers" (h1, h2, ...) to explicit things. After all, why defend semantic and readable markup just to throw the idea by the window when it comes to headings?
I like the idea to use the heading level as parameter to compile the whole, but I don't think you have to stick to the # of h?. You might want to work with the nesting level instead, especially if you adopt HTML5 markup for the source. I think the headings reflect the structure of the text, and this should be represented by the structure of the HTML (the nesting). Might be wrong, but nesting should do the trick, you don't need differentiation between h1-h6.
http://www.w3schools.com/html/html5_...c_elements.asp
http://coding.smashingmagazine.com/2...e-of-sections/