Mark's networking code

As cleaned up by @ediosyncratic using git filter-branch (among other dangerous tools).
Includes several fixups from later in the branch, but I may have missed some.
Compiled locally and passes all unit and acceptance tests.  Let's see how it fares more widely ...

I suspect reviewing the gross diff is easiest, as there are (even after squashing out a few) quite a lot of changes of mind along the way.  Also: 106 commits.
It may well mean that the last line is ignored.  I suspect `feof()` can return true despite no attempt having been made to read *past* the end of file; it isn't *guaranteed* to notice it's at the file's end, if no attempt has been made to read past the end, but it *may* notice it's there, if you've just read the last byte.

In any case, this is all incidental: we don't need to `*line = '\0'`, since CfReadLine() ignores prior content in line; and CfReadLine() returns -1 to tell us when we've run out of lines (or have hit an error, on which we also want to stop).  So I'll fix this by simplifying to `while (CfReadLine(...) != -1)` and dropping all the feof()ery.