cleaned up code, added comments, changed firework object so it no longer accesses the particle array directly