Refine `Vchan type, functorise mirage over Vchan

We change the `Vchan to int (* domid *) * Vchan.Port.t (* port *)
This matches the upstream convention. Note we also add a dependency
on vchan.

Signed-off-by: David Scott <dave.scott@citrix.com>
Update opam
Compile on 4.01
Merge branch 'master' of github.com:samoht/ocaml-conduit

Conflicts:
	lib/conduit_mirage.ml
Update .merlin
Add the missing Vchan functions in conduit_lwt_unix