Add a "doRemoveBy" method to the AbstractCollection
Make the return value of AbstractCollection::getItemFqcn() nullable and disable item type validation when it is null
Add a "doGroupBy" method to the AbstractCollection
added collection clone method
Initial version