Fix a race i noticed while pondering #1500:  We must snapshot the
object length while processing the Range header to ensure consistent
results when streaming from the backend.
Prefix the C-symbol of VCL objects with "vo_" to avoid issues with
reserved C keywords.

Fixes #1498
Make our Via header RFC compliant.
Deref the old object after finishing with it in cnt_miss()

Fixes: #1499
The vcl_purge{} method can return synth or restart.

(Remember to change the "PURGE" to "GET" if you do this.)

Fixes #1493
Fix typo.
Document that obj.hits may behave differently.
Backtrack advice that bit during testing.
Cope with systems having both <sys/endian.h> and <endian.h>

Fixes:	1476
By default linux::getopt(3) mangles the argv order, such that

	varnishadm -n bla param.set foo -bar

gets interpreted as

	varnishadm -n bla -bar param.set foo

This is counterintuitive and invites random script breaking if people
don't know they have to add an ornamental '--' in front of the CLI command
in Linux systems.

This commit makes Linux work the same way as every other POSIX system.

Fixes	#1496
Reset the "must close" flag when we close the backend connection
before a retry.

Fixes #1494

Testcase by:	scoof
Also zap keep when purging.

Fixes #1139
Remove the stand-alone "purge" action from VCL, now that we have
return(purge) from vcl_recv.

Retain the VRT_purge() for VMOD and inline-C use.
Insert a newline before the actual panic message in order to
avoid line wrapping
Move a misplaced assert.

Fixes	#1478
Add documentation for the fallback director.
Rewrite first paragraph to make it easier to read.
Add dependeny to build both rst files from vcc.

Fix spotty dependency where none or just one of the
.rst files output by vmodtool.py was known by the Makefile.
Tiny lint; file is called vmod.vcc.
Output correct tool name.

And avoid hardcoding it, in case we change it in the future
some time.