webdav: add support for remote copy

Add support for the COPY command for use with third-party copies.  This follows the protocol
described here:

    https://svnweb.cern.ch/trac/lcgdm/wiki/Dpm/WebDAV/Extensions#ThirdPartyCopies

Although the document describes only HTTPS used as a transport, this patch includes a framework
where many different transports may be supported.  The patch adds support for gsiftp.  Support
for https is delayed on a separate patch (that provides HTTPS push support) being accepted.
Once that patch is in dCache, adding WebDAV support for https transfers is trivial.

Periodic performance reports are sent to the client, describing the progress of the transfer.
To achieve this, the patch adds the ability to query the transfermanager service to discover
the current status of a transfer.  This may prove useful in the SRM third-party transfer,
which also allows for feedback to the client.

A noticable limitation of this patch is the lack of support for cancelling a transfer.  In
the protocol described in the above link, it is assumed that the client maintains a TCP
connection for the duration of the transfer and that, by closing this connection the client
signals that the transfer should be aborted.  Supporting this has proven difficult to
achieve with Jetty.

Target: master