Performant Object Pool
The new version of object pooling increases performance by using a queue instead of a list. We no longer need to iterate thru every Object in the list, now we can just pop one off of the top of the queue, with a queue for every different pool, it massively increases performance when iterating thru a large pool.