Make xmmsc_connect async under emscripten.
Always use tcp sockets under emscripten.
Define some constants that are missing in emscripten.
Don't include syslog.h under emscripten.

This header is not included in emscripten yet.
Rewrite xmms_ipc_tcp_client_init so it doesn't use getaddrinfo().

getaddrinfo() is not yet implemented in emscripten.
Include emscripten glue code: main loop and result handler.
Generate js library functions from ipc.xml
Wrap results into promises.
Convert some xmmsv to and from native JS types.
Added bare-bones build script.

This also includes the generated files for convenience.
Added sample javascript client.
Added TODO file.
s/Future/Promise/ for latest Firefox Nightly.
Bump xmmsclient.js built with emscripten 0708b232
Include promise library for now.

Demo should work on Chrome now.
Added a volume slider.
Load the whole UI at once when ready.
OTHER: Rename broadcast playlist_changed to changed.

This makes it consistent with other broadcast names.
Follow playlist updates.
WIP: Collection hacks

TODO

- What to do with idnumbers?

- Is it safe to add support for collections as return types?

- What to do with non-string attributes?

xc.collection_query_infos(
	SmallerEqual("date", "1967",
		Equals("artist", "The Doors", Universe())),
	0, 0, ["album"], [])

works, but

xc.collection_query_infos(
	SmallerEqual("date", 1967,
		Equals("artist", "The Doors", Universe())),
	0, 0, ["album"], [])

fails in the server for some reason.