Issue #3897: Make Constructors public in Cocos2d-JS
Merge pull request #4 from pandamicro/develop

Issue #3897: Make Constructors public in Cocos2d-JS
closed #4552: separate material ID and openGL ProgramID
closed #4552: change assert log message
closed #4560, fixed UISlider hitTest Point
Fixed #4566: Constructor added for LayerGradient
Merge branch 'develop' of https://github.com/cocos2d/cocos2d-x into LayerGradientCtor
Reverse CONSTRUCTOR_ACCESS
Merge pull request #5988 from andyque/fix_silder_hittest

closed 4560,  fixed slider hitTest position
remove deprecated code in lua tests & template
Merge pull request #6004 from dumganhar/develop

Fixed  <alloca.h> wasn't exist on Windows
[AUTO]: updating luabinding automatically
Merge pull request #6006 from CocosRobot/update_lua_bindings_1395835692

[AUTO]: updating luabinding automatically
Merge pull request #6005 from flashjay/develop

remove deprecated code in lua tests & template
Update AUTHORS [ci skip]
Remove the old implementation of LabelTTF in test case.
Fix crashes in event dispatch other related safety checks/fixes

1: Add a fix to prevent events from being sent to scene nodes which are destroyed. Previously when a node was being destroyed it would try to unregister any event listeners it would have. This process would fail however in the case where event dispatching was already underway because we can't modify the listeners list while we are iterating through it. This is a pretty common occurrence since we often tear down & switch scenes in response to button clicks etc. Fix the problem by nulling out the slot for the listener we are removing in this case, so that it's node no longer receives any events after it is destroyed. The event dispatching code will cleanup this unused/nulled slot once the event processing loop has terminated.

2: When removing an event listener in cocos2d::EventDispatcher, ensure immediately it gets removed from the node priority map and dirty nodes set in order to ensure we don't inadvertently access any dangling pointers to nodes.

3: Add debug checks to ensure nodes have no associated event listeners after they are destroyed. This check will catch the problem fixed by (1) if it is still present.

4: Add some extra debug sanity checks in the event dispatcher to ensure nodes are not added to the lists twice and that they are being properly removed from the lists under certain conditions.

5: In cocos2d::Node's destructor NULL out members after releasing them in case they somehow happen to be accessed during the destructor. Move the release of the event dispatcher to the very end, since we need to check against it in debug.
Update the reference of submodule "cocos2d-console".
Fixed #4566: Fix coding style problems
Merge branch 'develop' into LayerGradientCtor