Added checksum_stubs.c from mirage-platform

This is only used for networking, and isn't specific to a Mirage
platform (the Xen and Unix versions should be the same).

We now always use the x86_64-specific optimised version from mirage-xen
on x86_64 (whether Unix or Xen), and always use the generic version from
mirage-unix on other platforms.
Avoid namespace clash with local ntohs/htons functions.

These are macros in MacOS X, which causes a clash when compiling
our local copies.  Instead of a local undef hack, this just explicitly
renames the local functions to indicate that we want to use this code
rather than the system equivalents (this improves reproducibility
across different architectures and development operating systems)

This fixes the build on MacOS X.
Travis: also build the Mirage/Xen backend of the website
travis: build properly
Turn TCPv4 into a real FLOW-compatible interface.

Needs the associated changes in Mirage_types
Remove the need of lwt.syntax
ocp-indentize the code
Reduce the number of allocations by returning `return_unit` instead of `return ()`

`return_unit` is pre-allocated so it's a no-op. `return ()` allocates a new block every time.
Style
Shorten some long lines
More style fixes
Remove trailing spaces
More style fixes
Remove dead-code
spaces
spaces
Remove unnecessary ignore
Remove warnings (and dead code)
Simplify the code to create low-level server/client connection

Now all the state needed for creating a connection is in a record
Add .merlin file