Add a custom forEach to ArraySet
Add a custom forEach to ArraySet

Improve ArraySet.forEach perf 3x by dropping the iterator.

SmallSetPerformanceTests.iterate is unreliable in batch, probably due to GC pressure, but run individually gets the following results:

Iterate through a 6-element set
-------------------------------
ArraySet<Long>
  Default: 14.3 ns (13.6 ns-16.3 ns)
  Custom: 3.84 ns (3.56 ns-4.03 ns)
ArraySet<String>
  Default: 15.2 ns (14.1 ns-15.8 ns)
  Custom: 3.92 ns (3.65 ns-4.34 ns)
HashSet<Long>: 23.9 ns (22.7 ns-25.1 ns)
HashSet<String>: 26.8 ns (24.5 ns-28.6 ns)
LinkedHashSet<Long>: 17.2 ns (14.5 ns-26.0 ns)
  * 3 PS Scavenge collections over 3.00 ns
LinkedHashSet<String>: 17.1 ns (13.9 ns-25.6 ns)
  * 3 PS Scavenge collections over 3.00 ns

alicep-org/collect