misc ungetc fixes
Added support for loading .ogg audio files using a combination of
`SDL_RWFromConstMem()` + `Mix_LoadMUS/WAV_RW()`.

`SDL_RWFromConstMem()` now returns an opaque reference that corresponds
to a Javascript-side object which retains the information passed in.
The same for `SDL_RWFromFile()` but it saves different information.

When `Mix_LoadMUS/WAV_RW()` is called, it now expects a reference to
one of those Javascript-side objects and from it, either uses a
pre-loaded Audio, or reads bytes from the file-system to make one,
or uses the bytes originally passed into `SDL_RWFromConstMem()` to
create one.

Note that with this change you can now simply embed sound files in your
app, you do not need to preload them.
Updated with kripken's suggestions.
Added IN6ADDR_*_INIT macros.

Some code uses these instead of the extern symbols.
Add SHUT_WR to sys/socket.h.
Made sure that `IMG_Load_RW` is also aware that it should receive
`SDL_RWops *` generated from `SDL_RWFromFile()`.
 - rmdir / unlink no longer follow the final symlink
 - rmdir / unlink no longer check write permission on the found object, but on its parent
 - rmdir should return EBUSY when path matches the root / cwd
 - unlinking a directory should return EPERM according to POSIX (EISDIR is a Linux convention)
Merge pull request #1388 from inolen/unlink_fixes

misc unlink / rmdir fixes
Merge pull request #1387 from amatus/push-upstream

Fixes for GNUnet compile.
Fix JS syntax error when embedding an empty file.
Expose 'lstat64' as a simple alias for 'lstat'.
fix test_freealut
clean up global Building.* changes in test runner, fixes intermittent failure in other.test_static_link
Fix indentation
Merge pull request #1389 from rfk/embed-empty-files

Fix JS syntax error when embedding an empty file.
Merge pull request #1390 from rfk/lstat64

Expose 'lstat64' as a simple alias for 'lstat'.
Implement SDL_Surface refcounting
rename outline test files
add smaller outline testcase
fix test_static_link