[#303] back-porting the shapes improvements into the main 1.0.0-dev branch

broken for now, so I keep it on a separate branch, until it's working
again :P
[#303] fixed all collision issues following last commit
updated the defer method to take the execution context as first
parameter
[#348] Fix me.loader.unloadAll()
[#350] Fix documentation for me.Viewport.move()
[#354] Rename me.save.delete -> me.save.remove
Merge pull request #360 from insidiator/ticket-356

updated the defer method to take the execution context as first parameter
howler added, replaced former api with it
cleaned up documentation, as channel is not needed. Stream is not an option.
updated examples
[#356] fixed the defer function call in all examples
changed callback to be passed to play
Allowed some of the function to be chainable
[#303] added a optional `me.Rect` parameter to the `getBounds()` function

that prevent from systematically creating a new object in function
recurrently calling `getBounds` as a local object can be created and
reused.
[#303] few fixes and improvements to shape objects
removed mentions of `collisionBox` in the documentation since this is not a valid object for event listening
[#365] fixed stop throwing an exception after completion

porting from main branch
[#353] fixed a regression where onDestroyEvent was called after onResetEvent of the new state
Add a Particle System
- Add a ParticleEmitter Object
- Add a Particle Object
- Added the Particle in the object pool
- Create a example with several particle emitter behaviors
- Adjusted copyright year and contributors in some files (CHANGELOG, README, AUTHORS)
Added support for AMD (Asynchronous Module Definition) libraries such as require.js