libpromises depends on libcfnet.
More thread-safety in libcfnet and API cleanup.

* Make Hostname2IPString(), IPString2Hostname() thread-safe.

* Changed Hostname2IPString(), IPString2Hostname() to not be
  silent about resolution errors etc like before. Handle them
  properly (hopefully) now in the callers.

* Change some logic in previous client cache of connections to
  server (SERVERLIST) that was probably bogus and failed reusing
  existing connections. Now we are always sure we're storing only
  addresses (not hostnames) in that list.

* Make SERVERLIST static, and lock it with its own lock. This
  still has problems, and to be sure no races happen we have to
  lock for really long, so lets first see how this goes. it's now
  filled with ProgrammingError() so it should trigger if
  something is wrong...

* Optimised the size of some 4k buffers to be only
  CF_MAX_IP_LEN (64) or MAXHOSTNAMELEN (256).

* Remove the localip field from AgentConnection type, it was
  unused up to now and it wasn't clear what it was storing.
Remove CF_DATATYPES, make DataTypeTo/FromString consistent.

These were previously using different string sets.
Merge pull request #602 from jimis/wip3

More thread-safety in libcfnet and some API cleanups.
fix for bug #2386 : re-init nfs boolean value after each round of mount detection
length(), difference(), and intersection() functions for Redmine #2081
Adjust many Rlist iterations to use a const Rlist* and declare it more locally
Merge pull request #605 from jeffali/bugwork/2386-nfs-detect

fix for bug #2386 : re-init nfs boolean value after each round of mount ...
Ensure global promise type syntax does not lookup before non-global syntax
Add cf-promise --syntax-description=json (-s)

Prints a description of available syntax elements. For now, only
JSON output is supported.

Currently supports bundle-, body- and promise-types. Function listing
is still remaining and will be added shortly.
Fix for intersection() and difference() acceptance tests
Add FnCallTypeNew macros
Add SyntaxStatus to FnCallType
Add functions to cf-promises --syntax-description
Merge remote-tracking branch 'tzz/tzz/redmine-2081-data-facilities'
popt source drop trail