Python bindings: CDLL("libnotmuch.3.dylib") on Darwin

Use os.uname() to check for 'Darwin' and load "libnotmuch.3.dylib"
instead of "libnotmuch.so.3" if that is the case.
debian: Add package for debugging symbols (Closes: #717339)
NEWS: announce insert command
emacs: dropped rest of now-unused JSON functionality

Notmuch cli provides all structured data previously provided
in json format now in s-expression format, rendering all current
json functionality obsolete.
NEWS: Python bindings: Fix loading of libnotmuch on OS X (Darwin)
crypto: return NULL cryptoctx if protocol string is empty.

Badly formed messages that don't specify a protocol in
signed/encrypted parts, end up with a protocol of NULL.  strcasecmp in
notmuch_crypto_get_context then segfaults when trying to check it
against known protocols.  If the protocol is NULL, just return an
empty context immediately (with appropriate message.)
contrib: pick: use notmuch-start-notmuch

This uses the new notmuch-start-notmuch function which should give
better handling of stderr and errors generally.
emacs: News for S-expressions everywhere

Update the news about search using S-expression support to also say
that show is also now faster.
emacs: hello: make --batch error gracefully

Recently notmuch-hello was converted to use batch count. However, it
seems that several people run different versions of notmuch-emacs and
notmuch-cli so this batch makes emacs fail with an error message if
--batch is not available in the CLI.

Amended by: db
Put 0.16 NEWS in a reasonable order

The 0.16 NEWS grew chronologically during development, and as a result
wound up in a particularly odd order.  This rearranges it to put the
most user-visible news first.  Roughly: new features, modified
behavior, bug fixes, then deprecation, with related items grouped.

This does not modify the text of any of the news.
version: set new version and release date

These are manually set in version and NEWS, and propagate to the other files via
"make update-versions"
debian: start new changelog entry

Since Debian uses the changelog as metadata, we need an empty stanza
to build the new version.
debian: close bug requesting packaging of notmuch-deliver

notmuch insert is pretty much equivalent, so no need to support both.
debian: note that we now provide a notmuch-dbg package

This is already in upstream for a bit, but we lacked a changelog entry
closing the bug.
debian: add alot to recommends

Since this is in a disjunction, this should not force new packages to
be installed, but rather let people with auto-install-recommends (the
default) on install notmuch without emacs.
debian: update symbols for libnotmuch

Adding a new symbol should require an SONAME bump.
debian: build notmuch-vim again

Based on id:1370220299-14722-1-git-send-email-felipe.contreras@gmail.com

Hacked rather extensively by db. The most important changes:

       - bring back notmuch.yaml for the (debian specific?) vim-addons
         tool.
       - depend on vim-ruby, so we get a version of vim with ruby installed.
debian: rename notmuch-ruby to ruby-notmuch

This seems more in line with

http://wiki.debian.org/Teams/Ruby/Packaging#Guidelines_for_Ruby_packaging
emacs: bugfix attachment content-type as mime-type handling

Notmuch puts attachments in as declared content-type except when the
content-type is application/octet-stream it tries to guess the type
from the filename/extension. This means that viewing a pdf (for
example) which is sent as application/octet-strem invokes the pdf
viewer rather than just offering to save the part.

Recent changes to the attachment handling (commit 1546387d) changed
(broke) this. This patch stores the calculated mime-type with the part
and changes the attachment part handlers can use it instead.
release: synchronize dates

man pages, NEWS, and debian changelog all hardcode date.  Make them
hardcode the same date.