Manager: ignore return value on dev attach
Update the ocaml signatures of the C checksum computation functions

THe C checksum stubs (in mirage-platform) now take Cstruct.ts
rather than Bigarray.Array1.ts. We must make sure this non-typechecked
cross-repo signature matches.
Update network stack with new Cstruct API

* Add a new piece of packet metadata: Frame.t
  -- this tracks the nesting of frames, and allows us to
     do the equivalent of the old "shift_left" to expose
     the encapsulating (parent) frames for transmission,
     but more safely

* Replace most uses of Io_page.t with Cstruct.t
  -- Cstruct.ts should be used everywhere a "view" is needed,
     Io_page.get() remains as an allocation function

* Function renames e.g. Cstruct.blit* functions
write now blocks if buffer is full and segments if greater than mss is written at once
cleaned up previous test and added more tests
new CHANGES format
Merge branch 'cstruct' of git://github.com/djs55/mirage-net into merge-0.5.0
Merge branch 'tcp-buff-write' of git://github.com/balrajsingh/mirage-net into merge-0.5.0

Conflicts:
	direct/lib/tcp/pcb.mli
Add CHANGES for 0.5.0
Merge pull request #14 from djs55/merge-0.5.0

Update Cstruct API to 0.6.0, make tcp write block if window and buffer are full
Socket implementation updated with new Cstruct API
Merge pull request #15 from djs55/socket-cstruct

Socket implementation updated with new Cstruct API
Add 0.5.1 to CHANGES
Merge pull request #16 from djs55/socket-cstruct

Add 0.5.1 to CHANGES
Merge branch 'master' of git://github.com/mirage/mirage-net
switch to encouraging scatter-gather all the time, rather than playing tricks with packet header buffers. This simplifies the output stack and removes the need for the `Frame` module.
(still a WIP)
Install the packed `cmx` along with the `cmxa` to ensure that the compiler can do cross-module optimization (this is not a fatal error, but will impact performance if the `cmx` file is not present).
IPv4: fix the header length calculation

By convention we have a single header buffer containing ethernet/IP/TCP...
and a list of payload fragments. When we calculat the IPv4 header length
we must sum the length of the payload fragments *and* the length of everything
in the header buffer except the ethernet header length.

This fixes the bug where TCP headers appear to be missing in wireshark;
they are actually present on the wire but the parser is obeying the IP
header length field and truncating the packet before display.
Merge pull request #17 from djs55/fix-ipv4-header-len

IPv4: fix the header length calculation