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 is a developer point of view, not an operations point of view. But in this case it is "promise repaired" we are talking about not "not kept". 

Generally, CFEngine is not a compiler that should report an error if code failed to compile. In that case, the error is a service. In a highly distributed critical system an error is a liability that can break the system. Systems at scale should swallow errors and survive at all costs. Not being able to keep a promise is not necessarily a serious error, but even if it is, each run of CFEngine should have minimal output, else you might sabotage the system by flooding it with error messages.