Add new Cstruct-based xenstore packet parser and printer

Signed-off-by: David Scott <dave.scott@citrix.com>
ocp-indent --syntax=cstruct -i

Signed-off-by: David Scott <dave.scott@citrix.com>
Add unit tests for new Cstruct-based protocol parser

Signed-off-by: David Scott <dave.scott@citrix.com>
travis: add extra packages

Signed-off-by: David Scott <dave.scott@citrix.com>
Hook core_test into the build

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

Signed-off-by: David Scott <dave.scott@citrix.com>
Relicense core_test under ISC, the Mirage standard license

Signed-off-by: David Scott <dave.scott@citrix.com>
travis: reduce the size of the test matrix (new OCaml, new opam only)

Signed-off-by: David Scott <dave.scott@citrix.com>
Add Unix sockets interface and matching set of signatures

Signed-off-by: David Scott <dave.scott@citrix.com>
Refactor the transport signatures

We now have:
  IO: threads
  CONNECTION: something we can read/write to
  CHANNEL: something supporting packet enqueue and flush
  SERVER: something which creates CONNECTIONs
  TRANSPORT: all of the above

Signed-off-by: David Scott <dave.scott@citrix.com>
Add an in-memory logging system

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

Signed-off-by: David Scott <dave.scott@citrix.com>
Unix userspace: support the special xenbus device

Signed-off-by: David Scott <dave.scott@citrix.com>
core: add ACTIVATIONS and DOMAIN_STATE signatures

Signed-off-by: David Scott <dave.scott@citrix.com>
Add a xenstore client library

Signed-off-by: David Scott <dave.scott@citrix.com>
Add 'xs', command-line tool (with man page)

Signed-off-by: David Scott <dave.scott@citrix.com>
Move all the userspace code into 'xenstore.userspace'

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

Signed-off-by: David Scott <dave.scott@citrix.com>
README: start designing a new Client interface

We describe an interactive session in the README with the aim of
removing all the unnecessary clutter which inhibits understanding.

Signed-off-by: David Scott <dave.scott@citrix.com>
README: remove 'client', standardise on opening module M

The client already has code for tracking a single global xenstore
connection, so it's unnecessary to expose client types directly to
the app.

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