Fix for #3454 ISet iterator.remove() now throws UnsupportedOperationException 

The ISet iterator is now taken from a collection wrapped in `Collections.unmodifiableCollection`. Trying to remove items from it will result in UnsupportedOperationException.