Fix bug with onRenderCollection call

Fixes #1503 
Fixes #1506
Fixes #1504
I don't like how much this class is growing, we should break this down more.