Improved Fullscreen handling

Hi!

I added improved (SDL) fullscreen handling, see the changelog for the details.

Some remarks:
- At the end of my changes, I fetched a recent version of the 
  kripken/emscripten/incoming branch, merged it with my changes and now I use the 
  merged version for this pull request.
  Please comment on whether this is the right approach or whether you prefer to get the 
  old version + changes and do the merging yourself.
- I ran the test suite and got 18 errors and 1 failure (test_emcc). As this is the same 
  failing test as the last time, I guess my code is ok.
- You may want to review the requestFullScreen function.
  I extended the requestFullScreen function with extra parameters that have default 
  values. Therefore it should be compatible to existing  code while offering the new 
  functionality. Still, you may want to refactor the code to comply with your API 
  guidelines/philosophy.
- You should review my changes to shell.html .
  Instead of one button there are now 4 buttons to demonstrate the different ways to enter
  fullscreen mode. This version is primarily directed to you, so that you can choose 
  which version(s) you want to pick as standard fullscreen button(s).

cu
Michi