expanded the supported list type to include List<>, IEnumerable<>, IList<> and ICollection<>