Only attempt IMS on status=200 objects.
Remove negative Age assertion and truncate to zero instead.

The Age reported on response objects is calculated from the last
request timestamp taken. For a cache hit that hasn't been on a
waitinglist, that will be the Start timestamp. This opens a race where
the requests' last timestamp could be before the objects t_origin.

Truncate the Age to zero rather than assert in that case.

Fixes: #1486
Copy the status code, proto, status string and response message on
backend IMS.

When revalidating using backend IMS, copy the status code, status
code, status string and response message from the original object into
the new revalidated object. This makes sure that none of the 304
message fields gets applied to the new revalidated object.

Fixes: #1485
Document vcl_purge and replace vcl_erro with vcl_synth
Close race on req->wrk clearing introduced in 6f2e1bcd

The disembarking thread would clear the req->wrk pointer in
CNT_Request. The req could have already been rescheduled on another
worker at this point, causing the req->wrk to be cleared while
processing. Change back to not clearing the pointer for
REQ_FSM_DISEMBARK (it's already been done under mutex in HSH_Lookup
anyways).

Fixes: #1488
Sync with reality

Update board members, URLs, spelling and fmt(1).
Merge remote-tracking branch 'origin/master' into tcp_fastopen
Use correct flag TCP_FASTOPEN.