fix($compile): link async+replace element transclusion directives with comment element

Previously, element transclusion directives would not receive a comment node
in their link functions when they were the root of an asynchronous replace
template. This would cause duplicate elements to appear in an ng-if expression
within ng-repeat.

Closes #6006

---

WARNING: This patch needs some serious dog-fooding, and very careful review.
@IgorMinar, please take a look when you have some time for this.