Implement new mirage-types BLOCK signature

This needs matching changes in

* [mirage/mirage-types#1]
* [mirage/mirage-platform#73]

and is tested by changes in

* [mirage/mirage-skeleton#15]
* [mirage/ocaml-xen-block-driver#8]