Merge branch 'develop-3.0' of https://github.com/cocos2d/cocos2d-html5 into develop-3.0

# Via dingpinglv
* 'develop-3.0' of https://github.com/cocos2d/cocos2d-html5:
Merge branch 'develop-3.0' into gettersetter

* develop-3.0:
  Refactor #3878 #3922 #3963 #3983: Put temporary proto variable in window

Conflicts:
	cocos2d/core/base_nodes/CCAtlasNode.js
	cocos2d/core/sprite_nodes/CCSprite.js
	cocos2d/core/textures/CCTextureAtlas.js
	cocos2d/physics_nodes/CCPhysicsSprite.js
Refactor #3922: Complete getter/setter in cc.SpriteBatchNode
Merge pull request #1556 from pandamicro/develop-3.0

Refactor #3878 #3922 #3963 #3983: Put temporary proto variable in window
issue #3939: Refactor all createWithXXX function into one unified create function with different parameters for Animation
issue #3939: Refactor  createWithTexture function into  create function with different parameters for SpriteBatchNode
issue #3939 Refactor  createWithTexture function into  create function with different parameters for SpriteFrame.
issue #3939 Refactor  createWithTexture function into  create function with different parameters for ParticleBatchNode.
issue #3939 Refactor  createWithTotalParticles function into  create function with different parameters for ParticleSystem.
issue #3939 Refactor  createWithTexture function into  create function with different parameters for PhysicsSprite.
Refactor #3922: Remove useless dirty getter/setter function and make it public
    Refactor dirty getter/setter in engine
Refactor #3922: Refactor cc.Sprite flipX, flipY, offset getter/setter in engine
Refactor #3922: Refactor cc.Sprite atlasIndex, texture, textureRectRotated, textureAtlas getter/setter in engine
Refactor #3922: Refactor cc.Sprite batchNode, quad, quads, quadsToDraw getter/setter in engine
Refactor #3922: Fix bugs
1. Update texture and textureAtlas ref for cc.TextureAtlas
2. remove dirty setter for cc.PhysicsSprite
3. Use setFlippedX/Y to replace flipX/Y setter in cc.TMXLayer to resolve a strange bug that flipY doesn't get changed
Refactor #3985: Fix bug when margin not set in ccs.Margin
Merge branch 'develop' into gettersetter

* develop:
  Refactor #3985: Fix bug when margin not set in ccs.Margin
issue #3939 Refactor  createWithTexture function into  create function with different parameters for TextureAtlas.
Issue #3427: add a inputManager object to handle input event
Merge branch 'develop-3.0' of https://github.com/cocos2d/cocos2d-html5 into develop-3.0

# Via dingpinglv
* 'develop-3.0' of https://github.com/cocos2d/cocos2d-html5: