add non-working whitelist for exported libmpv symbols

It doesn't work because waf is horrible and fucking retarded I guess?
client: fix bogus initial event mask
client_example: explicitly quit

mpv_destroy() actually leaves the player running (as documented). The
client example quit only because all other threads in the process are
automatically terminated when main() returns.

Since mpv_destroy() returns after client destruction instead of the
playback thread quitting, there is still a race condition between main()
returning and the playback thread finishing deinitialization. Not sure
how exactly this should be handled. It sure would be easy to solve,
because you could just pthread_join() on the thread created in
mpv_initialize().
client_api: rename stuff

mpv_event -> mpv_event_id
mpv_event_data -> mpv_event
client_api: change asynchronous API

Now the user can/must pick reply IDs, instead of having the client API
allocate them. The user can for example cast pointers to uint64_t and
pass them as userdata.

Currently the API "disallows" passing 0 as userdata value, but doesn't
check for it. 0 is special because mpv_event.in_reply_to==0 basically
means "this event is not a reply". Maybe there should be a flag in
mpv_event instead to distinguish replies and real events.

Note: I _still_ haven't actually tested the async API.
add ISC license header to client API + implementation