Build man pages based on release date

We build the man pages for a repo based on a release date now, which
greatly simplifies the process.  The extra benefit is compiled man
pages are now consistent across all installations instead of dated
based on when a repo was built.
Merge branch 'feature/man-pages' into c-template

* feature/man-pages:
  Build man pages based on release date
Fatal warnings with Intel compiler

We want -Wall and -Werror with Intel's compiler, too.
Don't install empty man page directories

The CMake logic for installing man-page link files would create a
directory for each section that might possibly contain links.  Now it
only creates directories for the sections that actually contain links.
This also fixes a bug when using CMake 2.6, where the docs/links
directory needed to be present, even if your project has no links
whatsoever.  It's now fine for the directory to be missing.
Explicit header and footer in man pages

You now need to explicitly provide the text that goes in the header and
footer of each man page.  We were relying on a pandoc default before,
but that default has changed recently, so now we're requiring you to
provide specific text.
Remove old Sphinx documentation template

To complete the move to man page documentation.
Merge branch 'feature/docs' into c-template

* feature/docs:
  Remove old Sphinx documentation template
  Explicit header and footer in man pages
  Don't install empty man page directories
Ignore compiled man pages in git diff

No need to see the ugly compiled troff output when running a diff.
Embed copy of cram

We use the cram Python module [1] for command-line testing — i.e., where
you want to run a command line program and verify its output in some
way.  Before we relied on the cram module being installed in some system
location.  But it's not very big, and it's only a single file, so lets
embed it directly in the source tree instead.  Now you only need to have
Python installed to be able to run the command-line tests.

[1] https://pypi.python.org/pypi/cram
Include thread linker flags in pkgconfig file

On Debian, it looks like we need to tell any library that links with
libcork to also link with the threading library that libcork was
configured to use.  We can pass that information along using the
pkgconfig file.
Merge branch 'feature/thread-libs' into develop

* feature/thread-libs:
  Include thread linker flags in pkgconfig file
Remove cork_thread_body

Part of a larger effort to move away from embedded structs for these
kinds of OO-like types.  (We want to be able to make the types
completely opaque, so that we can add to them at will without breaking
ABI compatibility.)
Merge branch 'feature/thread-body' into develop

* feature/thread-body:
  Remove cork_thread_body
Bump soversion for 0.13.0
Merge branch 'release/0.13.0' into develop

* release/0.13.0:
  Bump soversion for 0.13.0
Move Sphinx documentation

I'm about to merge in the latest C template, which switches the
documentation from Sphinx to man pages.  I don't want to completely
delete the Sphinx documentation, at least not until it's been translated
to some other format.  So this patch moves it into a different location,
so that we can build both man pages and Sphinx for now.
Merge remote-tracking branch 'template/c-template' into feature/template

* template/c-template:
  Embed copy of cram
  Ignore compiled man pages in git diff
  Remove old Sphinx documentation template
  Explicit header and footer in man pages
  Don't install empty man page directories
  Fatal warnings with Intel compiler
  Build man pages based on release date
Merge branch 'feature/template' into develop

* feature/template:
  Move Sphinx documentation
  Embed copy of cram
  Ignore compiled man pages in git diff
  Remove old Sphinx documentation template
  Explicit header and footer in man pages
  Don't install empty man page directories
  Fatal warnings with Intel compiler
  Build man pages based on release date
Don't clear buffer when consuming stream

The `cork_buffer_to_stream_consumer` function claims that the resulting
stream consumer will append to the buffer, but previously it would clear
the buffer when it received the first chunk of data.  That means that we
could't consume data into an existing buffer while keeping any previous
contents.  This patch updates the consumer implementation to actually
perform an append.
Merge branch 'feature/append-buffer' into develop

* feature/append-buffer:
  Don't clear buffer when consuming stream