Implemented cascading opacity feature. Added CCLayerRGBA and CCLayerColor cascading opacity tests to LayerTest.

Adds CCNodeRGBA and CCLayerRGBA. Both conform to the CCRGBAProtocol and propagate opacity to their children. CCSprite now inherits from CCNodeRGBA, and CCMenu from CCLayerRRGBA.

Enable/disable this feature using CC_CASCADING_OPACITY in ccConfig.h.

When this feature is enabled, all classes calculate their cumulative opacity from their own opacity and from parent's opacity. For example, if you create a CCLayerRGB (or any other CCNodeRGB0 with an opacity of 127 (50%), and then add a children CCSprite with an opacity of 127, the sprite draws as if having an opacity of 63 (25%).
CCProtocols: Making opacity and color properties in the CCRGBAProtocol.
1) Implemented cascading color to CCNodeRGBA and CCLayerRGBA (works in the same way as cascading opacity). Use the CC_CASCADING_COLOR option in ccConfig.h.
2) It is now possible to disable cascading opacity and cascading color at node level. Use cascadeOpacity and cascadeColor properties.
Merge remote-tracking branch 'rsanchezsaez/rsanchezsaez-v2-cascading-opacity' into develop-v2

Conflicts:
	cocos2d-ios.xcodeproj/project.pbxproj
	cocos2d/CCAtlasNode.m
	cocos2d/CCLabelBMFont.h
	cocos2d/CCLabelBMFont.m
	cocos2d/CCMenu.h
	cocos2d/CCMenu.m
	cocos2d/CCSprite.h
	cocos2d/CCSprite.m