Removing adapter dependency from ItemLoader

Using generics in the `ItemLoader` is possible to avoid the dependency from `android.widget.Adapter` and ease future generalisations that can use other type of adapters/target views (eg:  `RecyclerView`).
This has been possible because `ItemLoader` does not rely on any `android.widget.Adapter` behaviour, but uses that type for some of its business methods.