add functions to handle adding messages.
separate kcn_client_search() to several functions in order to utilize
these functions later.
add functions to move current pointer.
export and define some definitions.
fix the wrong message type.
accept NULL argument in kcn_info_destroy().
preserve errno in a function, not a macro.
define a useful macro.
add functions to dump packet.
move current pointer after putting specified length of data.
dump a packet.
take an event base as an argument in kcn_client_new() so that a client
can handle other event seperately.
hold partially read data in a packet.
add a sanity check.
do not enqueue a packet when the connection is already closed.
re-align receiving packet buffer at a lower reading function.
change a returned error no.
clean up code.
fix the bug that did not properly append read data.
parse KCN add message.
support mutliple contiguous messages.