fix($compile): copy expandostore data into replaced nodes

Before this patch, with modern versions of jQuery being used, the element data cache was not being copied over into the new element when replacing an asynchronous directive's compile node with its template. This caused an issue where the element passed into a post link function's scope() method would return the incorrect scope.

The test which is added passes regardless of the change in jQuery 1.10.2, which is currently checked into the tree, but fails without the change in jQuery 2.0.3.

Closes #5099