Yield the humanized id of the headers

Using the `header` callback, it's now possible to get access to the
humanized generated id to easily keep tracking of the tree of headers
or simply handle the duplicate values easily.

Since the `HTML_TOC` and `HTML` objects both have this callback, it's
advisable to define a module and mix it in these objects to avoid
code duplication.

Resolves #310
Merge pull request #333 from vmg/headers-callbacks

Yield the humanized id of the headers