refactored to encapsulate Java Collection in my own collection type. This is actually a much more powerful and better technique, as it pushes responsibilities for answering questions onto your own collection abstraction, rather than promoting procedural style programming.