Support modifying the DOM structure in link function of a directive

Support modifying the DOM structure in the post link function of a direc...tive by creating a defensive copy of the node list, as opposed to a live DOM list.
This is useful for directives to actually replace their entire DOM fragment, e.g. with the HTML fragment generated by a 3rd party component (Closure, Bootstrap ...).
Also fix the indentation of the compileNodes function (was one too little).