Changes to (almost) build on MSVC 2008

Here are the changes I have so far.  I do not have a finished executable yet; still getting one error:

error LNK2019: unresolved external symbol uv_read2_start referenced in function ipc_connect_cb	connection_consumer.obj

I don't see uv_read2_start defined anywhere in uv or in haywire -- but I do see uv_read_start -- so I'm not sure what that's about.

The changes have been separated into patches by theme, across files.  There are very few kinds of changes:

1. implementing contained_of in a way that works with the older C compiler

2. moving declarations to the beginning of the block

3. two places where a uv function was called which had its third 'flags' argument omitted.  Not sure if this was due to a change in the version of uv, or if Clang/gcc support default argument values.  In both cases, added the value '0'.