Merge pull request #2 from cocos2d/develop

update
Merge pull request #3 from cocos2d/develop

sync original repo
Merge pull request #4 from cocos2d/develop

sync original repo
Merge pull request #5 from cocos2d/develop

sync original repo
Merge pull request #6 from cocos2d/develop

sync original repo
fixed self assignment error and provide move semantics to pushBack of Vector<T>
remove move semantic into another pr
Merge pull request #4798 from andyque/fixassignment

fix missing check self assignment of Vector<T>, Map<K,V>, Value and String