Based on Google Analytics error report, the following error happens
occasionally (15% or total errors for 2019-03):
```
Cannot read property '0' of null TypeError: at [email protected]
```
This was a result of calling [ViewportScroller#scrollToPosition()][1]
with `null`, which in turn happens when calling
[ScrollService#scrollToPosition()][2] while `this.scrollPosition` is
`null`. This can be a result of a `popstate` event without an associated
history state.
This commit fixes the error by checking whether `this.scrollPosition` is
`null`, before using it with `scrollToPosition()`.
(It also refactors away the unneeded internal `popStateFired` property.)
[1]: https://github.com/angular/angular/blob/deca6a60d/packages/common/src/viewport_scroller.ts#L101-L105
[2]: https://github.com/angular/angular/blob/deca6a60d/aio/src/app/shared/scroll.service.ts#L158-L161
PR Close#29658