Migrate to `gocheck`.
Simplify `WriteInt()`. Add `ExpectHeader()`.

`WriteInt()` now accepts an `int` parameter, and returns an overflow
error if the value is outside the 16-bit unsigned integer range.
`{Read, Write}String()` also return overflow errors.

Update the signatures for all dependents of `WriteInt()`. Replace
`ReadHeader()` with `ExpectHeader()`.

Change the `{Client, Server}DeliverMessage` header to `0x05`, in
preparation for implementing the latest API changes. Update the
`{Client, Server}Helo` message structure to reflect the new API.
Implement remaining CSCN API message types.