Most of this is for Stuart - very collection-y.
This includes a rewrite of ArrayDeque to bring it to parity with ArrayList
(except for List features).
The patch includes public methods ensureCapacity, trimToSize, replaceAll as
in ArrayList, but we can defer making them public to a later change (or a
later release), since new public methods are always controversial. But I'd
really like to get the performance/scalability changes in for jdk 9.
It also includes a redo of ArrayList#removeIf to make it more efficient and
consistent with behavior of other implementations, including ArrayDeque.
The patches are a little tangled because they step on each other's toes.
File CollectionTest is in "miscellaneous", but it tests both the ArrayDeque
and ArrayList changes.