initial commit for ProgressiveFilter kind

Enyo-DCO-1.1-Signed-Off-By: Cole Davis (cole.davis@lge.com)
share the index where the models were inserted into the collection

Enyo-DCO-1.1-Signed-Off-By: Cole Davis (cole.davis@lge.com)
add docs for index in add event

Enyo-DCO-1.1-Signed-Off-By: Cole Davis (cole.davis@lge.com)
note backwards compatible line but ensure that it properly looks for models property

Enyo-DCO-1.1-Signed-Off-By: Cole Davis (cole.davis@lge.com)
add the ability to make a collection not register for model events

Enyo-DCO-1.1-Signed-Off-By: Cole Davis (cole.davis@lge.com)
by default filter's internal collection should not register for individual model events

Enyo-DCO-1.1-Signed-Off-By: Cole Davis (cole.davis@lge.com)
add filtered state property

Enyo-DCO-1.1-Signed-Off-By: Cole Davis (cole.davis@lge.com)
only remove the listener if it was actually added for small performance gain in those cases

Enyo-DCO-1.1-Signed-Off-By: Cole Davis (cole.davis@lge.com)
update the way method property is exposed from shared base class

Enyo-DCO-1.1-Signed-Off-By: Cole Davis (cole.davis@lge.com)
observe the destroyed state of the collection so we can correctly respond when it is destroyed before the filter

Enyo-DCO-1.1-Signed-Off-By: Cole Davis (cole.davis@lge.com)
in some cases the subkind might facade the models property as a collection

Enyo-DCO-1.1-Signed-Off-By: Cole Davis (cole.davis@lge.com)
abstract base kind ProgressiveFilter

Enyo-DCO-1.1-Signed-Off-By: Cole Davis (cole.davis@lge.com)
ENYO-49: Fix uncaught TypeError on mobile
Merge pull request #810 from branch 'BHV-10957-coledavis'
Merge pull request #826 from branch 'origin/ENYO-49-seunghohpark'