IterableDifferFactory creates an IterableDiffer for a collection supported by Angular's iterable-differ system. IterableDiffers.find selects the factory; its create method produces the differ used for comparisons. section 15.3.4
Create a differ for a directive data source
A structural directive can initialize its differ with `this.differs.find(this.dataSource).create()`, then call `differ.diff(this.dataSource)` during `ngDoCheck`. A null result means no collection changes require DOM work. section 15.3.4
