Reinsert "Fix wrong function signature of copyStyle()"

This reverts commit 93b49f500953d1525cb8c2edbb95cc2709e32bc4.
Reinsert "Correct use and implementation of calculateOffset()"

This reverts commit 635bb917279223a4bc05bf967259cfc896fe4b7a.
Reinsert "Remove useless code"

This reverts commit e129f644b78a0bee4ccd7a2c92464138f40bb189.
Clean up depedencies
Refactor headerids plugin methods for readability and correctness

Refactoring done, and documentation added to the methods check(), process(), and
sanitize()
Don't change ids of headings that are Editables or Blocks

Heading elements which are Aloha editables or blocks must not have their ids
changed because implementations often use the ids of these elements to track
them in the DOM.