fix(dialog): leaking MdDialogContainer references (#2944)
fix(dialog): leaking MdDialogContainer references (#2944)

* fix(dialog): leaking MdDialogContainer references

Fixes an issue that caused the `MdDialogContainer` references to not be cleaned up, and as a result, any of the `MdDialogRef` and `MdDialogConfig` instances as well. The issue seems to come from the fact that a couple of blocks that look like:
```
this._ngZone.onMicrotaskEmpty.first().subscribe(() => {
  this._elementFocusedBeforeDialogWasOpened = document.activeElement;
  this._focusTrap.focusFirstTabbableElement();
});
```

End up being transpiled to:
```
var _this = this;
this._ngZone.onMicrotaskEmpty.first().subscribe(function () {
    _this._elementFocusedBeforeDialogWasOpened = document.activeElement;
    _this._focusTrap.focusFirstTabbableElement();
});
```

This seems to cause the browser to retain the `_this` reference after the dialog has been destroyed.

Fixes #2876.

* chore: add comment about `this` usage in zone

chouclee/material2,nkwood/material2,tinayuangao/material2,trik/material2,angular/components,RobJacobs/material2,emoralesb05/material2,epelc/material2,angular/components,shaunak1111/material2,epelc/material2,amcdnl/material2,amcdnl/material2,mmalerba/material2,josephperrott/material2,ChronosWS/material2,amcdnl/material2,DevVersion/material2,Eddman/material2,crisbeto/material2,tomlandau/material2-new,josephperrott/material2,trik/material2,josephperrott/material2,mcl-de/material2,kara/material2,Eddman/material2,amcdnl/material2,Jefiozie/material2,tomlandau/material2-new,shaunak1111/material2,jelbourn/material2,sllethe/material2,epelc/material2,tinayuangao/material2,ppham27/material2,attilacsanyi/material2,RobJacobs/material2,Eddman/material2,DevVersion/material2,ravinderpayal/material2,andrewseguin/material2,sllethe/material2,jelbourn/material2,nkwood/material2,ppham27/material2,attilacsanyi/material2,andrewseguin/material2,ppham27/material2,StefanSinapov/material2,jasnoponjatno/material2,trik/material2,DevVersion/material2,willshowell/material2,DevVersion/material2,chouclee/material2,mcl-de/material2,sllethe/material2,nkwood/material2,ppham27/material2,tomlandau/material2-new,StefanSinapov/material2,fairfaxmedia/material2,fairfaxmedia/material2,shaunak1111/material2,andrewseguin/material2,Eddman/material2,Jefiozie/material2,kara/material2,trik/material2,epelc/material2,chouclee/material2,tinayuangao/material2,DevVersion/material2,tomlandau/material2-new,emoralesb05/material2,willshowell/material2,attilacsanyi/material2,josephperrott/material2,RobJacobs/material2,emoralesb05/material2,Eddman/material2,jasnoponjatno/material2,jelbourn/material2,StefanSinapov/material2,shaunak1111/material2,Jefiozie/material2,ravinderpayal/material2,ChronosWS/material2,jelbourn/material2,mmalerba/material2,sllethe/material2,crisbeto/material2,jasnoponjatno/material2,kara/material2,joejordanbrown/material2,Jefiozie/material2,RobJacobs/material2,mmalerba/material2,fairfaxmedia/material2,crisbeto/material2,mmalerba/material2,emoralesb05/material2,joejordanbrown/material2,attilacsanyi/material2,joejordanbrown/material2,fairfaxmedia/material2,tinayuangao/material2,ravinderpayal/material2,crisbeto/material2,willshowell/material2,StefanSinapov/material2,chouclee/material2,mcl-de/material2,amcdnl/material2,jelbourn/material2,tinayuangao/material2,fairfaxmedia/material2,willshowell/material2,mmalerba/material2,joejordanbrown/material2,josephperrott/material2,Jefiozie/material2,andrewseguin/material2,mcl-de/material2,emoralesb05/material2,ppham27/material2,nkwood/material2,ChronosWS/material2,ravinderpayal/material2,ChronosWS/material2,angular/components,angular/components,andrewseguin/material2,jasnoponjatno/material2,willshowell/material2,kara/material2