Use Iterators instead of ArrayLists
Quick note: notice how there are close functions inside the various Join operations, those probably need to be implemented in the Joins.
Quick note: notice how there are close functions inside the various Join operations, those probably need to be implemented in the Joins.