Due to the multiplexing of requests from several sources on to
json-rpc connections, when Jsonrpc requests are sent, the
application can not know the request ID which is to be used.
A new AmArg parameter to jsonrpc sendMessage and execRpc functions
can provide user data, which is copied into the response event,
and thus can be matched to the request in the application.
o sendMessage DI function
to send message into open connection
O execServerFunction DI function
execute server function as if received through json-rpc
o getServerPort DI function
get the server port the json-rpc server is listening on
o notification events of connection disconnect
o various fixes in protocol handling