Manually implement mouse movementXY in HTML5 mousemove events when the browser does not provide the data. Fixes part 2) from issue #2219.
Implement support for Webkit mouse wheel events. Add new interactive mouse test. Checked on OSX Safari 6.0.5. Fixes #2219.
Add an automated version of the html5 mouse test in browser test suite.
Fix SDL Web Audio to work on Safari 6.0.5. That browser does not implement the AudioBufferSourceNode.start() method, but only has the older .noteOn() method, and the audio ctors don't come out as functions, but strongly typed ctor objects.
Fix OpenAL library to work with old Web Audio API syntax that exists in Safari 6.0.5 at least.
Make tests/openal_playback.cpp compilable outside the test runner.
Fix typo in comment.
Merge pull request #2225 from juj/safari_webaudio

Safari 6.0.5 webaudio fixes in SDL and OpenAL library.
Add better documentation to emscripten/html5.h KeyEvent structure on the current implementation and deprecation status of the various fields. See also pr #2222.
Merge pull request #2224 from juj/osx_mouse

OSX mouse support.
add a Nested branch type in relooper, to represent a path we must make sure is nested so that parallel paths do not get intertwined. this allows us to emit a more canonical form of nested ifs as a result of short-circuit operators; 1.13.2
test for bad triple warning
add -profiling option
Add eglWaitGL
fix commented-out relooper code
remove empty subnodes after eliminate
remove empty subnodes after vacuum
remove empty subnodes after aggressive variable elimination
don't needlessly add empty nodes in asm normalization/denormalization
Fix unregistering of event handlers (all params of removeEventListener must *exactly* match the signature used in registration, up to useCapture) and a closure name rename problem. Fixes #2230.