Only msync() on OS's without coherent buf/vm (aka: OpenBSD)

Fixes #1198
varnishadm: Handle EINTR from poll

poll can return EINTR, so we need to handle that.

Fixes: #1166
varnishlog: if -m given, but no -c and -b, assume both

If we don't add -c and -b in there, varnishlog will print all
transactions that aren't associated with a session.  That is likely to
not be what the user wants.

Fixes: #1071
Handle Cache-control: (private|no-cache|no-store) by default

As per discussion at the Varnish dev meeting, seeing Cache-control:
no-cache (and friends) now disable caching by default.  As a twist, we
respect Surrogate-control if that is present, in the default VCL.

Fixes: 1124
References: 477
Rewrite the vmod-spec compiler before we start adding new and fancy
features.
First compiler now recoginize what will become "VMOD objects"
once I get the other compiler to cope too.

This snapshot is committed to solicit feedback, so please do :-)
Forgot to git add this one.
prefix the vmod-obj struct with the vmod name, they are in global
namespace for vmod.
Forward declare the vmod object struct
This is a very shaky first prototype of VMOD objects.
Discontinue words as fixed tokens ('if', 'else' etc) and use ID's instead.

Fixes #1259
Don't tilt jenkins.
If we are going to start the client automatically, test that the
accept-sockets can actually be bound before we muck about with
daemon() or SHM files.

Belived to be implicated in #1262
Typo
Re-enable -b support for varnishncsa

This isn't really functional right now, due to the log record changes,
but it will allow you to specify -b again and you can have a different
format for backend requests than for client requests.
Keep track of persisted ban byte usage, and it's fragmentation.
Fix the length recorded for truncated bans (it should be the length of
the header, not 0).

Add a test case for reload of truncated bans.

Fixes: #1266
Mark the ban_magic as gone also in the persisted ban spec, so it can
be recognized as such on reload
Honor the persisted GONE flag on reload of bans, and keep the
duplicate counters consistent on reloads.

Add a test case for this.

Add a section on bans and offline silos in the docs.
Turn on SO_KEEPALIVE on all TCP connections.

This will help in determining remote hang up of the connection for
situations where we still are not able to send any reply, but freeing
the session will reduce resource overhead (e.g. when staying on
waitinglists for extended periods).

On platforms that support it also add runtime parameters to control
the keep-alive packet settings through socket options. On platforms
that don't support these socket options, the values must be set system
wide.

The Varnish runtime parameters will only be applied when they are less
than the system default.