1. Add C++ code to decode ETC file
2. Configuration and function supportsETC()
change test case, all platform not can read pkm file
give Texture2D::_pixelFormat a default value in construction
Merge branch 'origin/develop'

Conflicts:
	cocos2dx/proj.ios/cocos2dx.xcodeproj/project.pbxproj
	cocos2dx/proj.win32/cocos2d.vcxproj.filters
adjust cocos2d.vcxproj.filters
issue #2328 refractor etc support:
1. GL_ETC1_RGB8_OES not defined will return not support hardware etc
2. remove some space and comments
issue #2328 refractor etc support:remove comments
Merge pull request #3048 from dabingnn/iss2328-refractor-etc

Iss2328 refractor etc
Bugfixes to the Set class.
1: If adding an object to the container then only retain the object again provided it's not already been added. The underlying std::set does not support duplicate entries. (see: www.cocos2d-x.org/boards/6/topics/10876)
2: When removing an object only CC_SAFE_RELEASE it if it was actually contained in the set. (see: http://www.cocos2d-x.org/boards/6/topics/10876)
3: Fix a bug in 'removeAllObjects' where the underlying std::set container was not being cleared. (see: https://github.com/cocos2d/cocos2d-x/issues/2283)
Merge pull request #3057 from DarraghCoy/ccset_bug_fixes

Bugfixes to the Set class.
[ci skip]
Merge branch 'develop' of https://github.com/cocos2d/cocos2d-x into execDev