Start synchronising the xen libs with the userspace xenctrl ones

Rename Evtchn -> Eventchn
 -- Evtchn is the better name but Eventchn has been in xen-unstable for
    a while now
Remove xen Blkif from the build: will switch to ocaml-xen-block-driver
 -- perhaps we should put both xen and unix blkif in 'ocaml-block-driver'
    to make the package dependencies simpler?
Grant table 'map', 'mapv' (as would be used by a backend)

Unfortunately it's not possible to synchronise the xenctrl 'grant share'
(ie exporting of grant references as-in blkfront) because the mirage
implementation allows the sharing of an existing buffer but the xenctrl
version does not.
Remove the xen blkif implementation: this now resides in ocaml-xen-block-driver
Allow device providers to be added later

Previously a master device_t took a snapshot of the provider list at
a single point in time, preventing providers being registered later.

Instead we allow providers to be registered whenever is convenient,
and start per-provider threads on demand.
netif: update to new shared ring signature
Add a simple 'resume hook' mechanism for xen devices

In-tree Netif adds a resume hook.
Merge pull request #27 from djs55/sync-eventchn-with-xen

Move to out-of-tree blkfront