Fix performance issue with PathChildrenCache

I have a PathChildrenCache that is watching 30,000+ nodes.

The apply function inside processChildren consumes 100% CPU and is called hundreds of millions of times because transform is lazily evaluated and is used in a removeAll call.

Caching the list into a new array list is recommended by Guava and results in the apply function only be called once for each node.