Overload ITIList constructor to allow list bootstrapping (initialize the list with items directly) ; Introducing Remove and RemoveUsingIndexOf methods to ITIList, used to delete an item from a list without knowing the index (the two methods do the same thing differently); Allow a bulk Remove method which will use RemoveUsingIndexOf; Added Tests. Surprisingly, RemoveUsingIndexOf is a little slower than Remove (at least on a list.Count == 1).