Few collections updates / performance improvements

(Modified previous PR without Trove shenanigans, I guess I didn't get the memo)

 - Avoid allocation of Iterators when we know we have an ArrayList.
 - More optimized game time movement loop using ConcurrentLinkedQueue.
 - Random separation of concerns modifications.
 - FastMap -> HashMap in a few places
 - FastMap.shared() -> ConcurrentHashMap in a few places
I think this one falls into the micro-optimisation category. The old code is shorter and more conscise.