smapiv2: remove the 'dp' concept

This is actually a higher-level xapi-ism which shouldn't be seen by
plugin writers.

Signed-off-by: David Scott <dave.scott@citrix.com>
Remove VDI.{detach,activate,deactivate}

The most basic kind of SR only needs to be able to convert a
VDI into some kind of protocol URI which can be separately
'opened' etc

I think if a storage implementation needs 'activate' then it
needs to create its own 'initiator' and do a deeper integration.

Signed-off-by: David Scott <dave.scott@citrix.com>
VDI.attach should return a list of URIs, in priority order

Signed-off-by: David Scott <dave.scott@citrix.com>
The Illegal_transition error can go away

The LVHD state machine should be elsewhere e.g. in an LVHD datapath
driver.

Signed-off-by: David Scott <dave.scott@citrix.com>
Remove the 'Redirect' exception from the simplified storage interface

Signed-off-by: David Scott <dave.scott@citrix.com>
Rename the 'Query' interface 'Driver'

Signed-off-by: David Scott <dave.scott@citrix.com>
VDI.attach doesn't need to include read_write

Signed-off-by: David Scott <dave.scott@citrix.com>
Remove VDI.attach: return URIs in the vdi_info instead

Signed-off-by: David Scott <dave.scott@citrix.com>
Function to list SRs should be in Driver not SR

Signed-off-by: David Scott <dave.scott@citrix.com>
Rename 'vdi_info' to 'vdi'

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

This is because
  - it's dynamic
  - it doesn't work with de-duping

Signed-off-by: David Scott <dave.scott@citrix.com>
Rename 'VDI' to 'Volume'

Although this is different from the XenAPI it
  - avoids colliding with the term Virtual Desktop Infrastructure
  - is the same term used by other projects e.g. libvirt

Signed-off-by: David Scott <dave.scott@citrix.com>
Rename 'storage' to 'control'

  - we will specialise this repo to include storage interfaces only
  - we will sub-divide the 'SMAPIv2' into a control and a data-plane

Signed-off-by: David Scott <dave.scott@citrix.com>
More renaming of Smapiv2 -> Control

Signed-off-by: David Scott <dave.scott@citrix.com>
Rename: ocamlfind 'xapi-storage', module 'Storage' submodule 'Control'

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

Signed-off-by: David Scott <dave.scott@citrix.com>
Use URIs to identify SRs. Return an SR handle from SR.attach

Signed-off-by: David Scott <dave.scott@citrix.com>
Start the Foundation-ification

Signed-off-by: David Scott <dave.scott@citrix.com>
OCaml and python code looks ok

Signed-off-by: David Scott <dave.scott@citrix.com>
Start filling in the argument definitions

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