Rename notmuch_thread_results_t and notmuch_message_results_t to
notmuch_threads_t and notmuch_messages_t respectively.

Add a talloc context as the first argument to each command in
notmuch.c.

Write a "notmuch show" that displays a single thread.

Fix to use the *last* Message-ID header if multiple such headers are
encountered, (I noticed this is one thing that kept me from seeing the
same message-ID values as sup).

Audit everything for dealing with out-of-memory (and drop xutil.c).

Write a test suite.

Achieve 100% test coverage with the test suite.