Make sure KVO observing is properly finished

This is for cases in which the scrollview/collectionview/tableview might only want refreshing every now and then, where the controller might keep a strong reference to the control and thus this could potentially lead to a crash/exception. An easy example is a case in which the controller keeps the control alive and is then popped from the navigation stack, the collection view is deallocated before the controller (and the control) and thus a KVO deallocate exception is thrown.