Move the message handlers up to the Server

 * Client::exec now returns all new messages for the client
 * Message handlers are now held by the Server
 * Calling message handlers is now done by the Server
 * The handler signature has been changed to include the Server
   as well as the Client and JSON entity