Update the test and don't use Boost.Test for functional tests.
Correct some bugs. The error handler was called twice. The logging mechanism could throw exception when logging exception.
Add a simplistic client connection event oriented.
Update the tests and don't use Boost.Test anymore. The tests will be helpful to create a client API that will be use in Wesnoth.
Split the event mechanism into several files. Add support for enum-based event.
Decoupling the close_on_error function from server detail (so it will be usable with client too).
Move all the server protocol code inside protocol/server.
Simple POD representation of the header data.
Use dedicated file for the header_const_buffer (from umcd/protocol/header_data).
Use dedicated file for the header_mutable_buffer (from umcd/protocol/header_data).
Use dedicated file for the header_data stream header to config and vice-versa.
Move the make_header_(receiver|sender) in a dedicated file. Made these generic on the data (usually a config).
Split header_data into several files and update namespace and header inclusion.
Refactor the header2data mechanism using static function and avoiding a heap allocation.
Remove the coupling between header_mutable_buffer and the server environment, so it can be use with the client now.
Update the test to be compatible with the new code.
Made test protocol state function static.
Correct a bug that occurred when the cache is empty before validating, the code tried to access (and use) the top of an empty cache.
Add a function trace log.
[Bug] Correction of a critical bug: the payload integer wasn't converted from network to host.