This implementation uses weak references to the elements. Iterators automatically perform cleanups of garbage collected objects during iteration -> no dedicated maintenance operations need to be called or run in background.
@author bennidiDate: 2/12/12