implicit event loop  - not backwards compat; breaks all games

this has bothered me for a long time and i should
have done this different from pygame from the start of this project.

instead of `gamejs.event.get` to explictely query the event queu
I now provide a `gamejs.onEvent(yourEventHandler)`

and instead of `gamejs.time.interval` to trigger a continous
callback loop there is now `gamejs.onTick(yourTickFunction)`

similarly, worker API has also changed to:

   * `workerInstance.post()`
  * and to send msg from worker to main: `gamejs.post()` 

(the latter function is *only* available from within a worker)

dealing with an explicit event loop is un-javascripty and if
anything it is a performance penalty.

i updated all the examples. this breaks all games but it's an easy
fix.
fix time going backwads
Merge branch 'implicit-eventloop'
merge and simplify fullscreen & pointerlock

examples/noise uses fullscreen

two new events:

   * DISPLAY_FULLSCREEN_ENABLED
  * DISPLAY_FULLSCREEN_DISABLED

developer has to take care to either adapt the gamejs.display
size when does event arrive or fix the <canvas> with css (browsers
apply different default CSS if the canvas goes fullscreen)

renamed movementX/Y  -> movement[x,y]
move `gamejs.post()` to `gamejs.worker.post()`
fix sign of vectors.angle & simplify its math