CCEffectLighting - First pass at automatic light collection and light groups

Instead of requiring the user to manually add light nodes to their light effects, automatically
collect all lights in a scene and let the effects query for the closest ones. Which lights
contribute to which effects is controlled similarly to collisions. Lights and effects indicate
which groups they are in and if there is an intersection between a light's groups and an
effect's groups then the light contributes to the effect.

Note: Right now the query is only returning the first N lights not the closest N lights.
CCEffectLighting - Fix computation of sprite position during light collection
CCLightCollection - Use quick select to find N nearest lights

If the caller is requesting fewer lights than there are in the collection, use quick select
to find the nearest N.
CCEffectLighting - Filter the query results based on light radius

In addition to filtering out lights whose group mask doesn't match the query, also
filter out lights whose cutoff radius is less than the distance between the node and
the light.
Merge pull request #1044 from thayerandrews/develop

CCEffectLighting - Cutoff radius, falloff functions, coordinate system issues
CCLightCollection - Distance based filtering of light nodes

I was comparing the distance squared against the radius not the radius squared.
CCEffectsTest - Tweak the light cutoff subtest

Set the half radius to 1.0 to harden the edge of the cutoff making it more obvious.
CCEffectLighting - Change the world space light vector to high

Fixes specular highlight issues with distant lights on my iPhone.
Merge branch 'develop' into lighting/lightCollection
Ensured that the shader is compiled according to the gl_es spec.
"extension directives must occur before any non-preprocessor tokens" - this requirement was not being met, thus causing assertions on some android devices.
Merge remote-tracking branch 'upstream/develop' into develop
CCEffectLighting - Add light performance test

Draw a bunch of sprites with a bunch of lights to get an idea of how everything is performing.
Don’t enable GL_OES_standard_derivatives in the default fragment shader header.
CCEffectsTest - Light performance subtest

- Increase the light count from 4 to 8.
- Remove the light sprites to avoid the possibility that rendering them is influencing test performance.
CCEffectsTest - Lighting performance test

Reduce the default number of sprites so the test runs faster in the simulator.
Merge remote-tracking branch 'upstream/develop' into develop
Merge branch 'lighting/lightCollection' into develop
CCEffectsTest - Temporarily disable SDF tests

Removal of the OES_standard_derivatives preprocessor directive from the fragment shader header
breaks the SDF effect tests (the GLSL uses fwidth()). Since I'm about to fool with all of that, disable these
tests until the fixes are in place.