refactored BaseListAdapter to generics