Convert ConnStateData::In::buf to an SBuf
Sync with trunek rev.13305

This pulls in the MemBlob memcpy/memmove change required to safely use
SBuf as a I/O buffer.
Avoid buffer overrun by comm_read()

It seems the space details provided by SBuf do not necesarily match the
existing MemBlob size. If for example actions like consume() have shifted
the SBuf down the MemBlob buffer.

Use spaceSize() to guarantee that the underlying MemBlob store still
provides sufficient buffer to fill without overflowing.
Shuffle maybeMakeSpaceAvailable() to ConnStateData::In

maybeMakeSpaceAvailable() is an operation only for the buffer from
ConnStateData::In.
Prep for 3.3.12 and 3.4.4
Add url_rewrite_extras and store_id_extras for redirector and store_id helpers

The url_rewrite_extras/store_id_extras is a "quoted string" with logformat
%macro support. It is used to modify the request line for redirector and
storeId helpers.

The url rewrite and store_id helpers request format now is:
       url [<SP> extras]
and the default value for extras is:
  "%>a/%>A %un %>rm myip=%la myport=%lp"

Example usage:
   url_rewrite_extras "Note1=%{Note1}note Note2=%{Note2}note"

This is a Measurement Factory project.
url_rewrite_extras and store_id_extras patch fixes

Fixes to patch "Add url_rewrite_extras and store_id_extras for redirector and store_id helpers",r13308:
  - Fix cf_gen.cc:gen_conf(..) function to not escape quotes before write to 
    conf file
  - The Format::Format name is used to inform the user about parsing problems.
    Fix the names of related objects for the new redirecor_extras and 
    store_id_extras directives.
  - cf.data.pre: The NAME tag take as argument only the name of directive. Fix
    the new redirecor_extras and store_id_extras related tags.
Author: Nikolai Gorchilov <niki@x3me.net>
Use request URI instead of StoreID when forwarding requests to cache peers.

TODO: There are more bugs like that, including using Store IDs in ICP requests.
Remove useless code after rev.13309

The state variables used to store and present the redirector and store_id
helper parameters is no longer necessary.

  Detected by Coverity Scan. Issue 1191964.
Maintenance: Fix build issue in snapshots
Push SBuf down into Comm::IoCallback

Use a pointer to the SBuf instead of the rawSpace() because using a SBuf
copy can potentially cause different MemBlob to exist behind the Comm
read classes and the caller (ConnStateData) class. They need to be kept
identical so as not to loose any existing bytes in the I/O buffer when
a read callback handler is run.

Pointer to SBuf also avoids race conditions between comm_read async calls
and BodyPipe notifications which can potentially change the MemBlob
underneath comm_read() and invalidate te char* buffer pointer used
previously.
Sync with trunk rev.13312
Polish up the diff
crypto-ng: use libnettle MD5 algorithm support

Transitional patch detects libnettle when available and uses it without
yet forcing it as a required dependency.
Bug 4041: Missing files in compat/Makefile.am
Remove XMALLOC_TRACE and all references to sbrk(2)
Remove XMALLOC_TRACE and references to sbrk(2)
Remove XMALLOC_DEBUG
Removed MEM_GEN_TRACE
Removed lib/malloc_trace.cc