CCEffectLighting - Disable lighting if the primary color or the normal map are transparent
CCEffectsTest - Tweak the simple lighting test

Change the node hierarchy around a bit so the sprite can be scaled independently of
other nodes in the test scene.
CCEffects - [CCEffect prepareForRendering] -> [CCEffect prepareForRenderingWithSprite]

Since prepareForRendering is responsible for dynamic shader generation in response to property changes,
the lighting shader is dependent on the presence or absence of a normal map, and the normal map lives
on the sprite, the affected sprite needs to be supplied to prepareForRendering.  That was not being done
in the past. It is now.
CCEffectLighting - Handle absent normal maps the right way

If a normal map is missing from the affected sprite, generate a shader that just
hardcodes the normal vector to vec3(0,0,1) (coming straight out of the scene
towards the viewer). This also cleans up the "do I need to regenerate the
shader now?" logic a bit.