Handle event ACK on the client.
Fix the server-side event buffer.

Apart from simplifying the code, this fixes a confusion between client
id and event id : contrast
event_cache_.erase(it->first);
with
event_cache_[client_id].erase(it);
It also fixes dropping all events in a packet if one event ID was
already processed.
Add the correct namespace for the Direction enum.
Clarify log message.
The server can now send ACK in response to event packets.

Note that if the ACK is lost, no more ACK will be sent until the client
sends a new event (with a new ID).
Merge pull request #36 from Neki/topic/bf_add_event_ack

Add events acknowledge.