Start functorising the RPC ring

- recombine the Lwt code with the non-Lwt code
- functorise over EVENTS and MEMORY
- replace the (unit -> unit) notify fn with EVENTS.send
- supply the event channel in the 'init' function
- 'type sring' is becoming an internal type

Signed-off-by: David Scott <dave.scott@citrix.com>