Make JEventDispatcher compatible with HHVM

According to HHVM inconsistencies guildline, "Under Zend PHP, foreach by value will modify the array's internal cursor under certain circumstances. Under HipHop VM, foreach by value will never modify the array's internal cursor.

Moving end() from above key() function to below it also make the code easier to understand as the behavior of foreach with array cursor is complicated to understand.
Use jQuery for create captcha into plugin
[Remove Mootools] Behavior Keepalive without any library dependency.
[Update Test] - [Remove Mootools] Behavior Keepalive without any library dependency
Merge pull request #3299 from xillibit/patch-7

Use jQuery for create captcha into plugin
Merge pull request #3376 from hieblmedia/remove-mootools-keepalive

[Remove Mootools] Behavior Keepalive without any library dependency.
Merge pull request #3199 from chalet16/patch-1

Make JEventDispatcher compatible with HHVM