- Use smaller immutable-ish class TaskInfo instead of Task when doing estimation calculations
- use ArrayList with initial size of 1000 for holding queue
This doubles the processing speed of 30K+ queues - processing 550K in 10s.
Changed test to be closer to real world use (which actually made it twice as fast)