WritePBRTFile() detects objets that are area lights and writes them out in full, instead of using named object instances.

This is because PBRT does not work with instanced area lights.  They appear lit themselves, but do not illuminate the scene!