area light, BSDF, path integrator and some code cleaning