Added Type.IsCollectionType() and Type.IsGenericCollectionType() extension methods
Implemented & tested ItemsNotNull contract attribute