Try-implement conditional clone of volatile buffers.

A new "strong" claim concept is added to buffer::list and buffer::ptr.
A strong claim is almost equivalent to claim, but deep copies volatile
buffers to new raw_char buffers.

A volatile buffer is one which cannot be held/claimed for long
periods due to external dependencies (e.g., Accelio message buffers
are volatile).

Strong claim is now the unmarked case, so is performed automatically
in the buffer::list copy constructor.  Low-level operations should
allow explicit volatile sharing, so copying a buffer::list:iterator
or a buffer::ptr works as normal.

For explicit sharing of volatile buffers, a new boolean is added to
the public claim_* methods, and a buffer::list::share method is also
added, to share an entire sequence.

Signed-off-by: Matt Benjamin <matt@linuxbox.com>