New stats collection objects
Added new stats collection objects. Collect stats per thread, aggregate later in main thread to avoid mutex locks. Changed sampler to create sample packets instead of single samples, avoids threads waiting for sampler lock. Abstracted thread creation/deletion to Raytracer class.