Move client handling into new handle_client function

Each client_list_item now has its own data buffer, which is currently
fixed to a length of 256. In the near future this will be allocated
when needed, and realloc'd to accomodate multiple messages being split
across multiple packets.

Signed-off-by: Michael Ikey Doherty <michael.i.doherty@intel.com>