events: add number of arguments into struct event

We'll need it when sending event via socket. It could be obtained by
going thourgh signature and it sucks to do it always when we need the number.
So save it into the struct
client: shortening code

Put code for acknowledging events into stand-alone function
global: add enum side

enum representing if we're on DISPLAY side or CLIENT side.
events: chenge wit_eventarray_add prototype

Add side argument. Side is either CLIENT or DISPLAY. It allows me to
check if adding is being performed on client or display side and
therfore whether to treat objects as resources or as proxies.
events: store size and number of arguments

Store these properties when adding events into eventarray.
It's handy when we are sending the eventarray via socket.
events: add wit_eventarray_create()

This function creates new empty eventarray(). This is now prefered way
how to do it. Manual creating eventarray can lead to probles, because
in wit_eventarray_free we'll free the pointer.
server: free eventarray when present in display

since all eventarrays should be dynamically allocated, we can free
it too
events: add helper functions

add function which returns next type of argument in signature and
two functions which convert id to object and back.
events: fix object handling in wit_eventarray_emit_one

The object is now only id, but it was treated like an object.
events: add assert and fix coding style
events: improve comparing of eventarrays

More detailed messages and complaying with new approach in
wit_eventarray_add.
global: add SEND_EVENTARRAY operation

add enum constant for SEND_EVENTARRAY operation
events: add function for sending/recieving event

private functions for sending/recieving events via socket
events: free arguments of eventarray

some arguments are dynamicaly allocated, free them
events: add functions for sending eventarray

send whole eventarray using socket
client: wrapper around sending eventarray

create wrapper around wit_eventarray_send along with acknowledge of
successful transmit
server: create wrapper around wit_eventarray_recieve

Recieve eventarray on display side and acknowledge it to the client
server: abort on SEND_EVENTARRAY in process_request

for this operation is created standalone function, so don't use
process_request
client: make kick_display inline function

There are two lines of code
tests: make pointer-test comply with the newest changes