add Cohttp.S module

this module collects all the signatures used in the backend independent
part of the library
Cohttp.{request/response} should use Cohttp.S
fix has_body signature

merged incorrectly
change lwt/async backend to use new signatures

use Cohttp.S.{Request,Response} instead
add Body to Cohttp.S and use it lwt/async
use accessor instead of direct field label

not sure why is this necessary...
remove Cohttp.Client + regenerate oasis

The signature inside that module was not being used anywhere hence
there's no need to keep it around. Can be reintroduced once we find
a use for it.
Move Cohttp.IO to Cohttp.S.IO
regenerate oasis
change IO.S to S.IO
make S.IO the first module
Merge branch 'sig_module' of git://github.com/rgrinberg/ocaml-cohttp into rgrinberg-sig_module
sync CHANGES
pin mirage-http to trunk to aid coordinated changes
license for Cohttp.S
version is now 0.12.0
Sync CHANGES
Merge branch 'rgrinberg-sig_module' of git://github.com/avsm/ocaml-cohttp into avsm-rgrinberg-sig_module

Conflicts:
	CHANGES
	cohttp/body.ml
	cohttp/body.mli